更新/更改列表组件sencha touch的存储

时间:2011-06-22 15:22:14

标签: list sencha-touch store

我有一个叠加层,其工具栏为dockedItem,Ext.List为项目。 当用户拖动滑块以显示我在旋转木马中的每张卡中的重要内容时,会显示此叠加层。每张卡都有自己的商店,其中包含我想要在叠加层中显示的数据。

我可以在拖动时更改工具栏的标题:

this.overlayTb.setTitle(cards[index].categoryName);

但是当我尝试更改提供列表视图的商店时,它确实有效。

this.myList.store = cards[index].store;

它只是一直显示我设置的初始商店的数据而不是更改,就像工具栏标题一样。 我试过在myList和Ext.StoreMgr.get('newsStore')上调用doLayout()。load();正如this answer所述,但没有好处。如果我尝试:

this.myList.update();

它停止显示商店的数据,我只能看到一个空白面板

调试时,我可以看到this.myList.store更改为我需要的商店,但视图没有更新。

我希望你能帮助我

1 个答案:

答案 0 :(得分:1)

使用Ext.List的 bindStore(cards [index] .store)方法,该方法在旧存储之后正确销毁并清理并将新存储绑定到List的事件。