使用ViewModel绑定数据,当Store数据发生变化时,通过ViewModel的set方法更新绑定的值。
代码示例:
// ViewModel Ext.define('MyViewModel', { extend: 'Ext.app.ViewModel', alias: 'viewmodel.myviewmodel', stores: { myStore: { type: 'mystore' } } });
// View Ext.define('MyView', { extend: 'Ext.panel.Panel', xtype: 'myview', viewModel: { type: 'myviewmodel' }, items: { xtype: 'form', bind: { title: 'My Form - {myStore.count}', myStore: '{myStore}' }, items: [{ xtype: 'textfield', fieldLabel: 'Name', bind: '{myStore.name}' }, { xtype: 'textfield', fieldLabel: 'Age', bind: '{myStore.age}' }] } });
// Store Ext.define('MyStore', { extend: 'Ext.data.Store', alias: 'store.mystore', fields: ['name', 'age'], data: [{ name: 'John', age: 27 }, { name: 'Jane', age: 35 }] });
// Update Store Data var myStore = Ext.getStore('myStore'); myStore.getAt(0).set('name', 'Jack'); // Updates value in bound input field.