在我的 sencha 触摸应用程序中,我有一个 NavigationView 容器,它加载一个面板视图,其中包含从商店呈现的列表。
我有一个选项卡栏,其中每个选项卡都打开此 NavigationView 容器,根据点击的选项卡添加 NavigationView 容器内的面板视图使用的商店中的一些额外参数。
这工作正常,对于每个选项卡,我都获得了 NavigationView 容器,并在其中包含面板视图,其中包含该选项卡的正确列表。
问题是这些列表有一些子列表需要在点击列表项时加载。我使用以下控制器执行此操作,该控制器在 NavigationView 容器中推送另一个包含子列表的视图面板:
Ext.define('FirstApp.controller.Details', {
extend: 'Ext.app.Controller',
config: {
refs: {
// this is my NavigationView container
placesContainer:'placesContainer'
},
control: {
'placesContainer categorie list':{
itemtap: 'chooseCategory'
},
我的 chooseCategory 函数是:
chooseCategory:function(list,index,target,record){
//these add some extra params to my store's proxy
Ext.getStore('Articoli').getProxy().setExtraParams({ catid: record.data.id });
Ext.getStore('Articoli').load();
this.getPlacesContainer().push({
// this is the target view panel
xtype:'articoli',
title:record.data.title,
data:record.data
})
}
这很好用,但是当您单击列表项时,其子列表会被推入第一个选项卡面板中。示例:我点击第三个选项卡。该应用程序显示与第三个选项卡对应的列表。我点击列表中的一项。该应用程序在第一个选项卡面板中加载其子列表。在我点击第一个选项卡之前,我看不到任何更改。在那里我可以看到加载了选项卡 3 的子列表。