1

Sencha Touch は初めてです。ビュー内にリストがあります。ビューの初期機能で一覧を参照したい。関数内で、ストアをリストに設定します。

私の見解:

Ext.define('NCAPP.view.tablet.MainMenu',{
extend:'Ext.Container',
xtype:'mainMenu',
    id:'mainMenu',

    requires:['Ext.TitleBar','Ext.dataview.List'],
config:{
            loggedInUser:'',
    fullscreen:true,
            tabBarPosition: 'top',
    items:[{
        xtype:'titlebar',
        title:'NetCenter APP',
        items:[{
               xtype:'list',
               id:'menuList',
               itemCls:'listItem'
            }
        ]

    }]


},

    initialize: function () {
        Ext.Viewport.setMasked({
               xtype: 'loadmask',
               message: 'Loading ...'
           });
           var moduleStore=Ext.create('NCAPP.store.Module');
           moduleStore.load({
               callback:function(records,operation,success){
                    Ext.Viewport.setMasked(false);
                    // I would like to refer to the list here and set store to it
                    var menu=this.menulist;
                    menu.setStore(moduleStore);
                    console.log(records);
               },
               scope:this
           });
    }
});

誰でも私を助けてもらえますか?ありがとう

私のモデル:

Ext.define('NCAPP.model.Module', {
extend:'Ext.data.Model',

config:{
    fields:[
        { name:'id', type: 'int'},
        { name: 'name', type: 'string'},
        { name: 'description', type:'string'}
        ]
}

});

と私の店:

Ext.define('NCAPP.store.Module',{
extend:'Ext.data.Store',

config: {
    model:'NCAPP.model.Module',

    autoLoad:false,
    proxy: {
        type:'rest',
        url:NCAPP.app.baseApiUrl+'/user/module/1/',
        noCache: false,

        //limitParam: false,
        //enablePagingParams: false,
       // startParam: false,

        reader: {
            type:'json',
            rootProperty:'modules'
        }


    }

}

});

4

1 に答える 1

2

すでにリストを設定しているので、 Ext.getCmp()を使用してリストを取得するid必要があります。

var menu = Ext.getCmp("menuList");
menu.setStore(moduleStore);

後でリストを作成するには、refreshを試してください:

menu.refresh();
于 2013-04-03T12:57:25.600 に答える