重新配置Ext.tree.Panel

时间:2013-04-23 12:40:38

标签: extjs extjs4

我想重新配置现有的树。列已更新,但商店/数据没有。

handler: function() {        
    var newStore = Ext.create('Ext.data.TreeStore', {
        fields: [ 'C4', 'C5', 'C6' ],
        root: {
            text: '.',
            children: [
                { 'C4': 4, 'C5': 5, 'C6': 6 },
                { 'C4': 4, 'C5': 5, 'C6': 6 },
                { 'C4': 4, 'C5': 5, 'C6': 6 },
                { 'C4': 4, 'C5': 5, 'C6': 6 }
            ]
        }
    });

    var newCols = [
        { text: 'C4', dataIndex: 'C4' },
        { text: 'C5', dataIndex: 'C4' },
        { text: 'C6', dataIndex: 'C4' }
    ];

    tree.reconfigure(newStore, newCols);
}

http://jsfiddle.net/fR3z3/2/

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

树不会更新它的根节点。致电tree.reconfigure后,我必须致电

newStore.setRootNode(newStore.getRootNode());

现在它有效。

下一个问题,如果我添加新的cols,这些cols的数据将不会绑定到树网格。我必须定义一个新模型。

以下是完整的工作示例

http://jsfiddle.net/kleines0eichhoernchen/fR3z3/3/