关于Ext JS的View Model,参见:
https://blog.youkuaiyun.com/oscar999/article/details/85310641
问题提出
使用ViewModel的data属性可以绑定数据和视图的显示,类似:
data : {
firstName : ‘chen’,
lastName : ‘oscar’
}
但是如果使用JsonStore 的话,就对应会出现两个问题:
- Store对应的是一个数据集合,而不是一个JSON对象。
- JSONStore的数据是从服务端获取。
问题解决
对于问题1, 使用formulas 从Store的Array获取一个Object后, 通过set设置ViewModel的data属性。
对于问题2, JSONStore会在formulas里方法之后之后才能把数据load完, 所以在执行formulas的方法时,值是空的, 解决方法是通过Store的listeners,在store load完数据之后再进行ModelView的值的设定。
实例代码
1.视图:
MyJsonStoreVMView.js
Ext.define('Osxm.main.myJsonStor