【问题标题】:Extjs TreePanel not expandedExtjs TreePanel 未展开
【发布时间】:2013-06-09 07:16:07
【问题描述】:

我加载了一个扩展项目的 TreePanel(在我的 json 中定义),但是当它显示时它没有扩展。

只是目录(图标)打开,但项目不显示。我加载它使用加载存储功能重新加载我的树形面板。

storeTree = me.getTreePersonneStore();

            storeTree.load({
              params: {
                idPersonne: batch.proxy.getReader().jsonData.id, 
                lettrePersonne: batch.proxy.getReader().jsonData.lettre
              }
            })

我的商店:

    Ext.define('ModuleGestion.store.TreePersonne', {
    extend: 'Ext.data.TreeStore',

    requires: [
        'ModuleGestion.model.Personne'
    ],

    constructor: function(cfg) {
        var me = this;
        cfg = cfg || {};
        me.callParent([Ext.apply({
            autoLoad: true,
            model: 'ModuleGestion.model.Personne',
            storeId: 'StoreTreePersonne',
            root: {
               expanded : true,
               text : 'Personnes',
               expandable : true,
               id : 'root',
               nodeType:'async',
               uiProvider:false
            },
            proxy: {
                type: 'ajax',
                node: 'id',
                url: 'ModuleGestion/php/TreePersonne.php',
                reader: {
                    type: 'json'
                }
            },
            listeners: {
                beforeload: {
                    fn: me.beforeload,
                    scope: me
                }
            }
        }, cfg)]);
    },

    beforeload: function(store, operation, eOpts) {
        operation.params.node = operation.node.get("id");
    }

});

我的 JSON:

[{
    id:"A",
    text:"A",
    expanded:true,
    children:[
    {
        id:"101",text:"AA AA",leaf:true},
        {id:"98",text:"AA AA",leaf:true},
        {id:"86",text:"AA AA",leaf:true},
        {id:"99",text:"AA AA",leaf:true},
        {id:"96",text:"AA AA",leaf:true},
        {id:"100",text:"AA AA",leaf:true},
        {id:"97",text:"AA AA",leaf:true}]
    }],
}]

我的树:

{
    xtype: 'treepanel',
    id: 'TreePersonne',
    store: 'TreePersonne',
    viewConfig: {
    }
}

【问题讨论】:

    标签: javascript extjs sencha-architect


    【解决方案1】:

    试试下面的 json。孩子也有扩展属性。

    [{
        id:"A",
        text:"A",
        expanded:true,
        children:[
        {
            id:"101",text:"AA AA",leaf:true, expanded:true},
            {id:"98",text:"AA AA",leaf:true, expanded:true},
            {id:"86",text:"AA AA",leaf:true, expanded:true},
            {id:"99",text:"AA AA",leaf:true, expanded:true},
            {id:"96",text:"AA AA",leaf:true, expanded:true},
            {id:"100",text:"AA AA",leaf:true, expanded:true},
            {id:"97",text:"AA AA",leaf:true, expanded:true}]
        }],
    }]
    

    或者,您也可以在面板加载后展开子项:

    YOUR_TREE_PANEL.expandChildren(true);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-07
      相关资源
      最近更新 更多