Ext.define('apikeygen.store.Clients', {
extend: 'Ext.data.Store',
alias: 'store.Clients',
requires: ['CCC.model.Client',
'CCC.util.ActorContext'],
storeId: 'ClientsStore',
model: 'CCC.model.Client',
proxy: {
type: 'ajax',
url: '/services/clients',
reader: {
type: 'json',
root: 'clients.client'
}
extraParams : {
token : dynamica value ----------------> How to set this value dynamically
}
}
});
我在Extjs有一个像上面这样的商店。如何动态设置标记值?
我有"令牌"上下文中的值我可以访问该值,如:ActorContext.getToken();
如何将ActorContext.getToken();
分配给"令牌" Extjs商店的param。
答案 0 :(得分:1)
首先,应该使用autoLoad:false
配置商店,因为您不希望它在应用程序初始化阶段提前加载,而是仅在令牌可用之后加载。
然后,当您准备加载商店(令牌可用)时,请致电:
store.getProxy().setExtraParam('token', ActorContext.getToken());
store.load();
答案 1 :(得分:0)
你不能只分配值吗?
var store = Ext.create('apikeygen.store.Clients');
store.proxy.extraParams.token = ActorContext.getToken();
store.load();
答案 2 :(得分:0)
在CONTROLLER中添加它,或在initComponent
中添加VIEWvar store = Ext.create('apikeygen.store.Clients',{
storeId: 'storeClients',
});
store.proxy.extraParams = { token: 'your data value'};
并像这样加载您的商店:
store.load()