#vue.js #vuejs2
#vue.js #vuejs2
Вопрос:
Я использую SideMenuBar из https://www.npmjs.com/package/vue-sidebar-menu чтобы создать боковое меню для моего приложения. Элементы в панели должны быть динамическими в зависимости от того, вошел ли пользователь в систему. Проблема, с которой я сталкиваюсь, заключается в том, что при входе в систему элементы не реагируют — мне нужно обновить мой браузер, чтобы меню обновилось. Есть идеи, что я делаю не так?
<div id="app">
<sidebar-menu :menu="dynamicMenu" @toggle-collapse="onToggleCollapse" @item-click="onItemClick" :collapsed="collapseMenu" >
</sidebar-menu>
<router-view />
computed: {
isAuthorized: function() {
return UserStorageService.GetUser() === null ? false : true;
},
dynamicMenu() {
return [
{
header: true,
title: "Menu",
hiddenOnCollapse: true
},
{
href: { path: "/" },
title: "Home",
icon: "fas fa-home"
},
{
href: { path: "/Dashboard" },
title: "Dashboard",
icon: "fas fa-folder",
hidden: !this.isAuthorized
},
{
href: { path: "/" },
title: "Reporting",
icon: "fas fa-archive",
hidden: !this.isAuthorized
},
{
href: { path: "/" },
title: "My profile",
icon: "fas fa-share-alt",
hidden: !this.isAuthorized
}
]
}
},
При входе в систему значение «isAuthorized» должно измениться на true. Затем это значение должно быть присвоено моему динамическому меню (обратное) и должно переключать параметр меню скрытый / не скрытый.
Комментарии:
1. Это потому, что Vue.js не удается отследить изменения внутри массива, я предлагаю вам проверить это для получения дополнительной информации: vuejs.org/v2/guide/reactivity.html#For-Arrays
2. Приветствую, чувак, это было так