容器内容管理模块

之前已经介绍了视图管理模块(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请求及回复。

你可能感兴趣的:(管理)