具有远程存储但在本地查询的组合框
Posted
技术标签:
【中文标题】具有远程存储但在本地查询的组合框【英文标题】:Combobox with remote store but query locally 【发布时间】:2021-05-31 07:22:10 【问题描述】:我有一个绑定到休息代理商店的组合。我想远程加载数据,但是一旦加载,如果用户在组合中搜索,我不想查询服务器,而只是在本地查询商店。
如果我设置 queryMode: 'local',它永远不会从远程服务器加载数据。这是一种误导,因为属性名称暗示它与查询操作本身有关,而不是与商店有关。
有什么解决方法吗?
谢谢。
【问题讨论】:
您可以添加一些示例或小提琴来重现此行为吗? 听起来您需要在商店中设置autoLoad 或手动加载商店但保留queryMode: 'local'
。
【参考方案1】:
如果您已经远程加载了一个商店来填充您的组合,您可以使用chained store。然后您可以将您的组合设置为 queryMode: 'local' 并像这样定义它的商店('storename' 必须是有效的storeId):
xtype: 'combobox',
editable: true,
queryMode: 'local',
forceSelection: true,
store:
type: 'chained',
source: 'storename'
基本上,它会创建远程加载存储的虚拟副本,该副本可以拥有自己的过滤器和分类器,而不会影响原始(源)存储。而且这个你可以在本地过滤。
如果您在多个组合框中使用同一个商店,这将非常有用。使用这种方法,您将只加载一次数据,但您可以在不同的组合中同时使用不同的过滤器。我遇到了这个问题,而且很烦人,没有连锁店,如果用户在某处过滤到“abc”,所有其他组合都会相应地被过滤,这在大多数情况下绝对是不可取的。
【讨论】:
以上是关于具有远程存储但在本地查询的组合框的主要内容,如果未能解决你的问题,请参考以下文章