首页 > 代码库 > 容器内容管理模块

容器内容管理模块

之前已经介绍了视图管理模块(ViewManager),通过json格式的数据,渲染页面上的容器(个人觉得数据格式定义的很好,甚至可以在后期改为动态编辑态,题外话...)

通俗的来讲,房子已经建好了,下面就是需要给房子内部添加内容了。这个添加内容的功能,我命名为CtnManager,用来管理容器内容,而容器内部数据的格式,在这里给出:

{//对应一个chart控件    type: line,    series:[        {            title:淘宝销售天数据,//对应到图例            uid: DayIncome,            dataRange: { start: 2014/11/8, end: 2014/-1/-1       },        }    ],    panel_index:"af2d36k7"//对应到容器中的id}

CtnManager要管理的就是多个上面这样的数据,包括添加,清除,更新,所以经过分析得出模块的方法如下:

CtnManager.prototype.add = function(data){        this.panels.push[data.panel_index] = new PanelCtnManager(data);    };CtnManager.prototype.clearPanel = function(id){    var p = this.panels[id];    if(!p){        throw "要清除的内容不存在!"    }    p.Dispose();};CtnManager.prototype.update = function(id, dataRange){    var p = this.panels[id];    if(!p){        throw "要更新的内容不存在!"    }    p.Update(dataRange);};

这里提到了另一个模块PanelCtnManager这个模块的输入参数为一个Panel的数据对象,管理Panel的数据更新,ajax请求及回复。

容器内容管理模块