Я новичок в MVVM и Ext JS оба.
У меня есть 2 магазина: Люди и их Обязанности :
Люди: ['id', 'name','duty'],
, где duty
- это ключ int.
Обязанности: ['id', 'dutyName']
Я хочу отображать людей в сетке, но в одном столбце отображается не идентификатор пошлины, а название обязанности, например, не «1», а «Шеф-повар»
1) Я создал ViewModel.
Ext.define('TestApp.ViewModels.ListViewModel', {
extend: 'Ext.app.ViewModel',
alias: 'viewmodel.listVm',
stores: {
people: {
type: 'PeopleStore',
autoLoad: true
},
duties: {
type: 'DutiesStore',
autoLoad: true
}
},
2) Используйте эту виртуальную машину в представлении (Ext.grid.Grid)
viewModel: {type: 'listVm'},
bind:
{
store: '{people}'
},
3) Столбец с обязанностями теперь содержит идентификаторы ('1', '2', '1' и т. д. c.)
{
text: 'Должность',
dataIndex: 'duty',
flex: 2,
valueId: 'id'
}
Добавление bind: {value: '{duties.dutyName}'}
и воспроизведение ошибок ошибок missing a setValue method