Я стараюсь сделать простой древовидный вид на основе этого примера в ExtJs 6.0 без каких-либо успехов. Он выдает эту ошибку в консоли, и экран отображается пустым.Создание дерева в Sencha ExtJs 6.0
Uncaught TypeError: Cannot read property 'getRoot' of undefined
Если кто-то может указать мне в правильном направлении, я бы очень признателен.
Это мои файлы:
Модель
Ext.define('ADMINSEG.model.Opcion', {
extend: 'Ext.data.TreeModel',
alias : 'model.opcion',
fields: [
{name: 'task', type: 'string'},
{name: 'user', type: 'string'},
{name: 'duration', type: 'string'},
{name: 'done', type: 'boolean'}
]
});
магазин
Ext.define('ADMINSEG.store.MntOpciones', {
extend : 'Ext.data.TreeStore',
storeId: 'myStore',
model: 'ADMINSEG.model.Opcion',
proxy: {
type: 'ajax',
url: 'treegrid.json'
},
folderSort: true
});
Посмотреть
Ext.define('ADMINSEG.view.aplicacion.Opciones', {
extend : 'Ext.tree.Panel',
requires : ['Ext.data.*',
'Ext.grid.*',
'Ext.tree.*',
'Ext.tip.*',
'Ext.ux.CheckColumn',
'ADMINSEG.store.MntOpciones'],
title: 'Core Team Projects',
width: 500,
height: 300,
renderTo: Ext.getBody(),
collapsible: true,
useArrows: true,
rootVisible: false,
store: 'myStore',
multiSelect: true,
columns: [{
xtype: 'treecolumn', //this is so we know which column will show the tree
text: 'Task',
width: 200,
sortable: true,
dataIndex: 'task',
locked: true
}]
});
Попробуйте использовать такой магазин - store: Ext.data.StoreManager.lookup ('myStore'). Чтобы использовать хранилище, как и вы, магазин должен быть зарегистрирован в приложении - f.e. используя конфигурацию хранилища Controller. – yorlin