Дерево Vue Element.ui, выпустить событие перезагрузки
Я создаю SPA на Vue (что-то вроде облачного диска), используя компонент
Загрузка новых узлов
loadNode: async function (node, resolve) {
try {
let firstGeneration = await foldersAPI.get(this.$store.state.user.myDrive);
if (node.level === 0) {
return resolve(firstGeneration.data.folder.children);
} else {
var data;
if (node.data.hasChildren) {
let children = await foldersAPI.get(node.data._id);
console.log(children);
data = children.data.folder.children;
} else {
data = [];
}
resolve(data);
}
} catch (e) {
console.log(e)
}
Ответы
Ответ 1
Мое решение состояло в том, чтобы просто перезагрузить древовидное представление, добавив атрибут v-if в treeview, а затем создав метод
reload() {
this.show = false;
this.$nextTick(() => {
this.show = true
})
}
Вызов этой функции перезагрузки затем правильно перезагружает дерево
Ответ 2
Попробуйте передать вычисленную переменную в качестве поддержки для древовидного компонента. Все изменения в вычислении вызовут рендер дерева.