Extjs:如何从控制器设置额外参数以在商店中用于填充组合框值。想要将额外参数值设置为 abc.1-cond1、abc.2-con2

Posted

技术标签:

【中文标题】Extjs:如何从控制器设置额外参数以在商店中用于填充组合框值。想要将额外参数值设置为 abc.1-cond1、abc.2-con2【英文标题】:Extjs: How to set extraparam from controller to use in the store for populating combobox value.want to set extraparam value as abc.1-cond1, abc.2-con2 【发布时间】:2021-09-09 16:40:08 【问题描述】:

在 ExtJS 中,我想在控制器中设置 extraParam。 这些 extraParams 应该在商店中使用。

我想根据条件在组合框中显示数据。

如果满足条件 1,则额外参数包含 abc.1

然后store加载一个groupID对应的数据来获取数据

.. 与条件 2(abc.2) 相同。

如何设置额外参数?

//存储

abcStore: 
    type: 'store',
    proxy: 
        type: 'ajax',
        url: PPA_SERVICE_BASE_URL + 'any.Service',
        paramsAsJson: true,
        actionMethods: 
            read: 'POST'
        ,
        reader: 
            type: 'json',
            rootProperty: 'data'
        ,                       
    

   

//组合框

xtype: 'combobox',
fieldLabel: 'Payment Stream Type',
labelWidth: 130,
width: 280,
editable: false,
margin: '0 10 0 0',
displayField: 'label',
allowBlank: false,
bind: 
    store: 'abcStore',

//控制器 - 加载数据的函数

loadabcData: function(newValue) 
    var me = this,
        view = me.getView(),
        viewModel = this.getViewModel(),
        store = viewModel.getStore('abcStore'),
        extraParam = groupId: groupId;

    store.getProxy().setExtraParams(extraParams);
    store.load();
      
    // How should i further set this groupID.I want to set groupId value as abc.1 on condition1 and //abc.2 on condition 2
,

【问题讨论】:

【参考方案1】:

你几乎拥有它

loadabcData: function(condition) 
    var me = this,
        view = me.getView(),
        viewModel = this.getViewModel(),
        store = viewModel.getStore('abcStore'),
// ==> next line does the trick
        groupId = (condition === 'Cond1') ? 'abc.1' : 'abc.2',
        extraParam = groupId: groupId;

    store.getProxy().setExtraParams(extraParams);
    store.load();
      
    // How should i further set this groupID.I want to set groupId value as abc.1 on condition1 and //abc.2 on condition 2
,

【讨论】:

以上是关于Extjs:如何从控制器设置额外参数以在商店中用于填充组合框值。想要将额外参数值设置为 abc.1-cond1、abc.2-con2的主要内容,如果未能解决你的问题,请参考以下文章

如何从 ExtJS 商店打印(或警告)值?

加载商店后如何在网格中设置值? EXTJS3

如何从加载的商店 sencha touch 中删除额外参数

Extjs - 从商店中删除新添加的选定项目

如何在extjs中动态设置url和root

如何在 extraParams 商店 extjs 上设置动态值