Подтвердить что ты не робот

Дерево 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)
}
4b9b3361

Ответ 1

Мое решение состояло в том, чтобы просто перезагрузить древовидное представление, добавив атрибут v-if в treeview, а затем создав метод

reload() {
    this.show = false;
    this.$nextTick(() => {
         this.show = true
    })
}

Вызов этой функции перезагрузки затем правильно перезагружает дерево

Ответ 2

Попробуйте передать вычисленную переменную в качестве поддержки для древовидного компонента. Все изменения в вычислении вызовут рендер дерева.