mirror of https://github.com/layui/layui
剔除 无效文件
parent
a0faaaffee
commit
ce33f4aaf4
|
@ -1,134 +0,0 @@
|
||||||
/**
|
|
||||||
* MODULE_DEMO_NAME 模块组件通用结构
|
|
||||||
* MIT Licensed
|
|
||||||
*/
|
|
||||||
|
|
||||||
layui.define([''], function(exports){
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
var $ = layui.$
|
|
||||||
|
|
||||||
//模块名
|
|
||||||
,MOD_NAME = 'MODULE_DEMO_NAME'
|
|
||||||
,MOD_INDEX = 'layui_'+ MOD_NAME +'_index' //模块索引名
|
|
||||||
|
|
||||||
//外部接口
|
|
||||||
,MODULE_DEMO_NAME = {
|
|
||||||
config: {}
|
|
||||||
,index: layui[MOD_NAME] ? (layui[MOD_NAME].index + 10000) : 0
|
|
||||||
|
|
||||||
//设置全局项
|
|
||||||
,set: function(options){
|
|
||||||
var that = this;
|
|
||||||
that.config = $.extend({}, that.config, options);
|
|
||||||
return that;
|
|
||||||
}
|
|
||||||
|
|
||||||
//事件
|
|
||||||
,on: function(events, callback){
|
|
||||||
return layui.onevent.call(this, MOD_NAME, events, callback);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//操作当前实例
|
|
||||||
,thisModule = function(){
|
|
||||||
var that = this
|
|
||||||
,options = that.config
|
|
||||||
,id = options.id || that.index;
|
|
||||||
|
|
||||||
thisModule.that[id] = that; //记录当前实例对象
|
|
||||||
|
|
||||||
return {
|
|
||||||
config: options
|
|
||||||
//重置实例
|
|
||||||
,reload: function(options){
|
|
||||||
that.reload.call(that, options);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//字符常量
|
|
||||||
,STR_ELEM = 'layui-MODULE_DEMO_NAME', STR_HIDE = 'layui-hide', STR_DISABLED = 'layui-disabled', STR_NONE = 'layui-none'
|
|
||||||
|
|
||||||
//主模板
|
|
||||||
,TPL_MAIN = [''].join('')
|
|
||||||
|
|
||||||
//构造器
|
|
||||||
,Class = function(options){
|
|
||||||
var that = this;
|
|
||||||
that.index = ++MODULE_DEMO_NAME.index;
|
|
||||||
that.config = $.extend({}, that.config, MODULE_DEMO_NAME.config, options);
|
|
||||||
that.render();
|
|
||||||
};
|
|
||||||
|
|
||||||
//默认配置
|
|
||||||
Class.prototype.config = {
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
//重载实例
|
|
||||||
Class.prototype.reload = function(options){
|
|
||||||
var that = this;
|
|
||||||
|
|
||||||
//防止数组深度合并
|
|
||||||
layui.each(options, function(key, item){
|
|
||||||
if(layui.type(item) === 'array') delete that.config[key];
|
|
||||||
});
|
|
||||||
|
|
||||||
that.config = $.extend(true, {}, that.config, options);
|
|
||||||
that.render();
|
|
||||||
};
|
|
||||||
|
|
||||||
//渲染
|
|
||||||
Class.prototype.render = function(){
|
|
||||||
var that = this
|
|
||||||
,options = that.config;
|
|
||||||
|
|
||||||
//解析模板
|
|
||||||
var thisElem = that.elem = $(laytpl(TPL_MAIN).render({
|
|
||||||
data: options
|
|
||||||
,index: that.index //索引
|
|
||||||
}));
|
|
||||||
|
|
||||||
var othis = options.elem = $(options.elem);
|
|
||||||
if(!othis[0]) return;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
that.events(); //事件
|
|
||||||
};
|
|
||||||
|
|
||||||
//事件
|
|
||||||
Class.prototype.events = function(){
|
|
||||||
var that = this
|
|
||||||
,options = that.config;
|
|
||||||
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
//记录所有实例
|
|
||||||
thisModule.that = {}; //记录所有实例对象
|
|
||||||
|
|
||||||
//获取当前实例对象
|
|
||||||
thisModule.getThis = function(id){
|
|
||||||
var that = thisModule.that[id];
|
|
||||||
if(!that) hint.error(id ? (MOD_NAME +' instance with ID \''+ id +'\' not found') : 'ID argument required');
|
|
||||||
return that
|
|
||||||
};
|
|
||||||
|
|
||||||
//重载实例
|
|
||||||
MODULE_DEMO_NAME.reload = function(id, options){
|
|
||||||
var that = thisModule.that[id];
|
|
||||||
that.reload(options);
|
|
||||||
|
|
||||||
return thisModule.call(that);
|
|
||||||
};
|
|
||||||
|
|
||||||
//核心入口
|
|
||||||
MODULE_DEMO_NAME.render = function(options){
|
|
||||||
var inst = new Class(options);
|
|
||||||
return thisModule.call(inst);
|
|
||||||
};
|
|
||||||
|
|
||||||
exports(MOD_NAME, MODULE_DEMO_NAME);
|
|
||||||
});
|
|
Loading…
Reference in New Issue