Extjs 大商店的组合框。如何设置值

Extjs 大商店的组合框。如何设置值,extjs,Extjs,我有一个组合框,它具有以下属性: displayField:'name', valueField:'id' 它的存储可能包含数千行或数百万行。当用户按下一个按钮时,服务器返回表单的json,如下所示: {"field_one":"abrakadabra","combobox_with_large_store":"123"} 这里123是特定行的id。然后我需要显示一个“用户友好”的值(displayField),但要做到这一点,我应该首先将该值加载到存储中。但我不确定,做这件事的最佳方式是什

我有一个组合框,它具有以下属性:

displayField:'name',
valueField:'id'
它的存储可能包含数千行或数百万行。当用户按下一个按钮时,服务器返回表单的json,如下所示:

{"field_one":"abrakadabra","combobox_with_large_store":"123"}

这里
123
是特定行的
id
。然后我需要显示一个“用户友好”的值(displayField),但要做到这一点,我应该首先将该值加载到存储中。但我不确定,做这件事的最佳方式是什么——我应该跟踪
change
事件还是其他什么。
change
事件的问题是,用户可能会在组合中打印一些值以查询其存储,这些值中可能有数字值(因此无法区分数字id(它是真实值)和用户打印的一些数字值)。因此,我需要的是关于如何设置和加载具有大型存储的组合框的值的建议(请记住,用户可以使用数值查询此存储)

我们能看看你的模型和商店是什么样子吗?现在我有一个小案子。一个表单、两个字段(其中一个是带有“大”存储的组合框)和一个按钮。用户按下按钮,服务器返回json。在客户端上,我执行form.setValues(json)。因此,第一个字段被设置,第二个(组合)没有被设置,因为它没有被加载。所以,我想知道的是,加载商店的最佳策略是什么。是否在
事件中更改
事件?我不喜欢更改事件有可能出现恶性循环:首先尝试设置值(按form.setValues更改)->存储为空,然后再次加载->更改值。因此,假设服务器返回一行id的json时,应该将其加载到存储。接下来我们应该做什么-听什么事件,什么时候加载,什么时候进行最终设置?如果存储相对较小,我将使用
自动加载:true
。这里有
自动加载:false
。那么,我应该如何处理事件和方法方面的所有问题呢?我想您不打算在选择的选项中显示数千个选项吧?你能详细说明一下你的要求吗?我们能看看你的模型和商店是什么样子吗?现在我有一个简单的例子。一个表单、两个字段(其中一个是带有“大”存储的组合框)和一个按钮。用户按下按钮,服务器返回json。在客户端上,我执行form.setValues(json)。因此,第一个字段被设置,第二个(组合)没有被设置,因为它没有被加载。所以,我想知道的是,加载商店的最佳策略是什么。是否在
事件中更改
事件?我不喜欢更改事件有可能出现恶性循环:首先尝试设置值(按form.setValues更改)->存储为空,然后再次加载->更改值。因此,假设服务器返回一行id的json时,应该将其加载到存储。接下来我们应该做什么-听什么事件,什么时候加载,什么时候进行最终设置?如果存储相对较小,我将使用
自动加载:true
。这里有
自动加载:false
。那么,我应该如何处理事件和方法方面的所有问题呢?我想您不打算在选择的选项中显示数千个选项吧?你能详细说明一下你的要求吗?我们能看看你的模型和商店是什么样子吗?现在我有一个简单的例子。一个表单、两个字段(其中一个是带有“大”存储的组合框)和一个按钮。用户按下按钮,服务器返回json。在客户端上,我执行form.setValues(json)。因此,第一个字段被设置,第二个(组合)没有被设置,因为它没有被加载。所以,我想知道的是,加载商店的最佳策略是什么。是否在
事件中更改
事件?我不喜欢更改事件有可能出现恶性循环:首先尝试设置值(按form.setValues更改)->存储为空,然后再次加载->更改值。因此,假设服务器返回一行id的json时,应该将其加载到存储。接下来我们应该做什么-听什么事件,什么时候加载,什么时候进行最终设置?如果存储相对较小,我将使用
自动加载:true
。这里有
自动加载:false
。那么,我应该如何处理事件和方法方面的所有问题呢?我想您不打算在选择的选项中显示数千个选项吧?你能详细说明一下要求吗?