我有一家商店APP.store.Posts
,我想实例化 3 次不同的时间。它们都将保存相同类型的数据,但在重新加载、分页等时将使用不同的参数。在控制器中,我在onLaunch
函数中执行此操作。
onLaunch: function() {
Ext.create('APP.store.Posts',{
storeId: 'unclassifiedPosts'
});
Ext.create('APP.store.Posts',{
storeId: 'positivePosts'
});
Ext.create('APP.store.Posts',{
storeId: 'negativePosts'
});
},
然后,在beforerender
我在控制器上创建的侦听器方法中,我这样做:
beforeRenderPostsGrid: function(grid) {
var store = Ext.getStore('unclassifiedPosts');
store.load();
},
beforeRenderPositivePostsGrid: function(grid) {
var store = Ext.getStore('positivePosts');
store.getProxy().extraParams = {'some_param' : 'some_value'};
store.load();
var checkOtherStore = Ext.getStore('unclassifiedPosts'); //THIS STORE NOW HAS SAME PARAMS AS positivePosts STORE
},
问题是,无论beforerrender
最后调用哪个网格,所有 3 个商店都有这些参数。所以初始负载很好,但如果我进行任何刷新、分页等。它们都显示相同的数据 b/c 每个商店的代理都有相同的 extraParams 不知何故。
据我了解,该storeId
参数应该使我的商店独一无二,所以我错过了一步吗?