одну из нод в другую ноду, то переопределяю ноду полученную через provide/inject путем this.treedata=новые данные и после этого я после добавления ноды на самый высокий уровень не происходит ререндеруровень. а если я добавляю ноду на высший уровень через .push то все работает. как это можно пофиксить vue2?
что-то я пока читал чуть не поучил вывих мозга =)
как я понимаю меняется ссылочка и перестает быть реактивной. как фиксануть
В вопросе не понятно, что такое нода, что такое this.treedata и как со всем этим связан provide/inject...
нода-компонент дерево типо такого [ { id: 0, level: 0, name: 'Root Node', telephone: '+3213141423', exanded: true, children: [ { id: 1, level: 1, name: 'Node 1', telephone: '+321312313123', exanded: true, children: [ { id: 3, level: 2, name: 'Node 1.13123123', telephone: '+351251213123', exanded: true, children: [] }, { id: 4, level: 2, name: 'Node 1.231231', telephone: '+3213512521123', exanded: true, children: [] } ] }, { id: 5, level: 1, name: 'Node 2', exanded: true, telephone: '+32131412423', children: [] } ] } ]
this.treedata-это данные которые я получил через provide/inject
Тогда в них никак нельзя что-то присвоить, это просто переопределит локальное свойство, значение которого раньше было установлено из провайда. Нужно либо мутировать (плохо), либо провайдить метод для конкретной операции обновления, типа addNode и тп
данные вроде добавляются, но теперь оно вообще ничего не рендерит
Обсуждают сегодня