如何默认选择extjs中的子节点

时间:2016-11-04 19:03:15

标签: extjs

我有一个痕迹工具栏,我必须显示所选的childnode默认值。我正在使用树库,root是我正在创建的,然后进行ajax调用以获取子节点。在我看来,我默认选择一个选择:pStore.getRoot()。childNodes [2],它给我null。 甚至pStore.getRoot()。firstChild给出null。不确定我错过了什么。 任何帮助表示赞赏。

谢谢!

存储

    Ext.define('Online.store.Publications',
      {
       extend       : 'Ext.data.TreeStore',
       alias        : 'store.Publications',
       nodeParam    : 'id',
       autoLoad     : true,
       root     : {
        text        : 'Pubs   ►',
        id          : 'pub',
        expanded    : true,
        iconCls     : 'doc-folder',
        leaf        : false
       },
        rootVisible : false,
        proxy       : {
        type        : 'ajax',
        noCache     : false,
        url         : Online.getBaseURL()+'/nPub/getPublicationsJSON',
        reader      : {
            type : 'json'
        },
        timeout     : 60000,

        }
       }
   });

查看

    Ext.define('Online.view.Breadcrumb', {
        extend      : 'Ext.toolbar.Toolbar',
        xtype       : 'navigation-toolbar',
       id           : 'navigation-toolbar',
       requires    : [
                    'Online.view.BreadcrumbController'
      ],
       controller  : 'breadcrumb',
       reference   : 'navigation-toolbar',

        initComponent   : function() {
        var pStore = Ext.create('store.Publications');
        ));
        Ext.apply(this, {
            items       : [
                        {
                    xtype           : 'breadcrumb',

                    id              : 'navigation-breadcrumb',
                    reference       : 'breadcrumb',
                    useSplitButtons : false,
                    flex            : 0.85,
                    showIcons       : false,
                    useArrows       : true,
                    bind            : {
                        selection : '{id}'
                    },
                    store           : pStore,
                    selection       : pStore.getRoot(),
                    autoLoad        : false,
                    rootVisible     : fals  
                }                                       
            ]
        });
        this.callParent();
    }
});

1 个答案:

答案 0 :(得分:0)

Ext.define('Online.view.Breadcrumb', {
    extend      : 'Ext.toolbar.Toolbar',
    xtype       : 'navigation-toolbar',
   id           : 'navigation-toolbar',
   requires    : [
                'Online.view.BreadcrumbController'
  ],
   controller  : 'breadcrumb',
   reference   : 'navigation-toolbar',

    initComponent   : function() {
    var pStore = Ext.create('store.Publications');
    var PChilds;
    ));
    Ext.apply(this, {
        items       : [
                    {
                xtype           : 'breadcrumb',

                id              : 'navigation-breadcrumb',
                reference       : 'breadcrumb',
                useSplitButtons : false,
                flex            : 0.85,
                showIcons       : false,
                useArrows       : true,
                bind            : {
                    selection : '{id}'
                },
                store           : pStore,
                selection       :'',
                autoLoad        : false,
                rootVisible     : fals  
            }                                       
        ]
    });

           ***pStore.on('load', function(store, records) {
            PChilds = pStore.getRootNode().childNodes[0]
            var nodeObj = this.items.items[1];
           nodeObj.setSelection(PChilds);
        },this);***
    this.callParent();
}

});