我有一个 Extjs 应用程序,它使用了很多组合框(带有附加的服务调用)。这些组合中的每一个都附加了一个休息存储区,为它提供了一种从服务器获取数据的方法。
我的问题是,即使所有商店的 autoLoad 为 false,这些组合框的每个实例都有多个 rest 调用。
我想,要么:
找到一种方法将存储限制为仅 1 次调用(通过配置) ——不需要超过 1 次调用,数据不会经常更改
找到一种方法,在第一次加载后将 store 的代理从 rest 代理更改为 memory 代理——这将允许组合执行尽可能多的 load(),不会再调用服务器。
编辑: 为了说明我的组合是如何创建的:
Ext.define('SelectBox', {
extend : 'Ext.form.field.ComboBox',
alias : 'widget.selectBox',
editable : false,
allowBlank : true,
displayField : 'label',
valueField : 'value',
forceSelection : true,
minChars : 1,
queryMode: "local" //added this after the answer was given
});
我打电话给他们:
{
xtype:"selectBox",
store: "someStore"
}