В ExtJS5 у меня есть TreePanel с включенным перетаскиванием. Когда я перетаскиваю узел с дочерними элементами из исходного дерева в целевое дерево, копируется только родительский узел.
Если я попытаюсь выполнить глубокое клонирование в прослушивателе «beforedrop», произойдет сбой со следующей ошибкой: Ext.data.Model.constructor(): аргумент конструктора Bad Model 2 — «сеанс» не является сеансом.
Представление имеет контроллер представления, но не имеет модели представления.
Определение дерева в поле зрения:
xtype: 'treepanel',
itemId: 'myProjectsTree',
rootVisible: false,
viewConfig: {
plugins: {
ptype: 'treeviewdragdrop',
enableDrag: false,
enableDrop: true
},
listeners: {
beforedrop: 'doDrop',....
В контроллере:
doDrop: function(dropNode, dragNode, overModel) {
var node = dragNode.records[0];
var clonedNode = node.copy('111', true);<--- failed here
Я видел сеансы, определенные в сценарии модели представления. Должна ли функция копирования определять сеанс viewmodel? Есть ли способ обойти это. Есть ли ошибка в ExtJS5.
Любая помощь приветствуется!