我在代码中的不同位置使用了多个商店 (JSON)。一种用途是根据某些条件将这些聚合到一个新商店中(其中已经有自己的数据)。
例如,我有两个商店:一个包含 position_id、position_name,另一个包含 role_id、role_name。现在有另一个商店部分初始化,我想使用两个先例商店来完成它。
例如:StoreRoles:role_id、role_value StorePositions:position_id、position_value StoreLineup:lineup_id、参与者、role_id、role_value、position_id、position_value
在创建 StoreLineup 时,我希望 role_value 和 position_value 根据他们的 id 取值。
这有效,但并非总是如此。事实上,当 ExtJS 传递给 StoreLineup 初始化时,StoreRoles 和 StorePositions 并不总是准备好。最后,数据并不总是设置好,我在这一点上遇到了一些 JavaScript 错误(因为我在现有元素上使用了 get())。
所以我想延迟 StoreLineup 的初始化。虽然没有加载其他两个商店,但 StoreLineup 一定也没有加载。它必须在其他商店创建完成后创建。
但是怎么做呢?我没有找到任何可行的解决方案(使用加载事件等)。目标是在 GridPanel 中呈现完整的 StoreLineup。
我使用 ExtJS 3.4