# 印象家手机选片平台 **Repository Path**: flyyu2010/yinxj ## Basic Information - **Project Name**: 印象家手机选片平台 - **Description**: 印象家手机选片平台 - **Primary Language**: JavaScript - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2017-08-15 - **Last Updated**: 2023-02-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 印象家手机选片平台 印象家手机选片平台 **安装和运行** ``` npm install npm run dev ``` **目录结构说明** 项目模块分为管理后台应用和前端应用两种,前端应用放在apps下,管理后台应用放在platform下面 ``` config.json //全局配置文件 server.js //服务启动文件 platform //管理后台 apps //前端应用 lib //后台基础库 web-lib //前端基础库 logs //日志目录 upload //上传文件目录 ``` **后台管理应用结构说明** ``` index.html 入口文件 config.json 配置文件 ``` **配置文件说明** 配置文件中的信息会被自动注入到应用主页面, ``` { "title":"后台管理", //标题 "app_name":"applist", //应用名称 "view_dir":"components", //组件目录 "usedai":true, //是否使用dai(数据访问接口) "dev_static":["components","images","common"], //静态文件目录,可以直接在浏览器访问的静态文件目录 //基础样式文件库 "styles":[ "bootstrap","calendar","admin-lte","skin-green","common-icon","wangeditor", "home/common/css/rewrite.css" ], //基础脚本文件库 "libs":[ "jquery-plug","bootstrap","calendar","wangeditor","slimscroll", "home/common/js/art-filter.js" ], //组件库 "components":[ "common/pager","common/add-label","common/cover-uploader","common/rich-editor", "home", "activity/main","activity/activity","activity/apply","activity/add-form" ] } ``` ### 组件 页面功能都被封装到一个一个的组件里面,如主页组件,班级管理组件,分页组件。 一些复杂的需要重用的业务逻辑也被封装到组件里面了,如分页组件,上传组件,富文本编辑组件。 **定义组件** 使用H5x.component定义组件 ``` H5x.component(comname,parents,initfn); //comname 组件名称 //parents 继承的父组件 //initfn 初始化方法 ``` **应用实例** ``` H5x.component("activity.activity",[],function(opts){ this.container = opts.container; //用于渲染模板的插件 this.use("render"); //用于访问数据接口的插件 this.use("dai"); //用于触发器的插件 this.use("emitter"); //创建一个访问活动功能的数据接口 this.activitydai = this.dai.create("activity"); this.init(); },{ init:function(){ this.list_activity(); var self = this; this.emitter.on("activity-refresh",function(){ self.list_activity(); }) }, list_activity:function(){ ... } }); ```