为了账号安全,请及时绑定邮箱和手机立即绑定

ExtJS 手动添加记录以存储和动态更改模型

ExtJS 手动添加记录以存储和动态更改模型

开心每一天1111 2022-01-13 16:48:14
目标我正在聚合来自多个来源的数据并将其显示在一个网格中。数据都是相同的格式。为了实现这一点,我将来自多个来源的数据加载到唯一的存储中,然后将记录加载到主存储中以进行显示。问题数据加载正常,但我有一个动态模型,可以重新格式化数据以显示在网格中。此模型必须在加载时更改,它不能在模型文件中硬编码。但是,一旦从其他商店加载并显示所有数据,模型字段就不会在商店中设置。强制商店应用模型的正常方法是调用store.load(),但是当我调用store.load()它时,会从其他商店中删除手动添加的数据。如何强制这些数据保留在商店中,或者有没有办法强制商店应用模型而不从 url 请求数据?TLDR如何强制手动添加的记录保留在商店中,或者有没有办法强制商店应用动态模型而不从 url 请求数据?
查看完整描述

3 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

在我看来,您可以重新加载商店中的数据(因为您已经拥有所需的所有数据)。使用 ExtJs 4.2,您可以尝试以下代码:

yourStore.loadRawData(yourStore.data.items, false)

这应该确保您的所有字段都设置正确。 https://docs.sencha.com/extjs/4.2.6/#!/api/Ext.data.Store


查看完整回答
反对 回复 2022-01-13
?
POPMUISE

TA贡献1765条经验 获得超5个赞

监听 beforeload 事件,返回 false 阻止自动加载,调用 Ajax 获取需要的数据。


查看完整回答
反对 回复 2022-01-13
?
米脂

TA贡献1836条经验 获得超3个赞

try store.sync();

如果这无济于事,请尝试使用

store.loadRawRecords([records],true);

或者另一种方法是将数据保存在数组中并从那里加载而不是从其他商店加载


查看完整回答
反对 回复 2022-01-13
  • 3 回答
  • 0 关注
  • 196 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信