【发布时间】:2021-10-22 10:11:51
【问题描述】:
我有点迷失在哪一个是最好的方法。从 API 获取用户数据后,我将用户数据存储在 sessionStorage 中。如何根据角色(即管理员、代表、访客)显示菜单项。
我有一个基本的 Bootstrap 侧边栏,如下所示。
<ul class="sidebar-nav">
<li><a>Home</a>
<ul class="sidebar-dropdown">
<li>Default</li>
<li>Reports</li>
</ul>
</li>
<li><a>Contact</a>
<ul class="sidebar-dropdown">
<li>Admin Contact</li>
<li>Contact 1</li>
</ul>
</li>
</ul>
我是否应该根据菜单项的角色以及在加载显示或隐藏菜单项时运行的 JavaScript 函数向菜单项添加类??
任何指导将不胜感激。
【问题讨论】:
-
应该是其他方式。收到数据后,您应该通过可用链接填充列表
ul。隐藏是不够的。您确实想删除它们,因为用户根本无权访问它们。 -
类似
const list = routes.map( route => `<li><link href=${route.link}>${route.title}</link></li>);,然后将其注入您的ul。ULelement.innerHTML = list.join("") -
感谢您的回复。我最初的想法是这样的对象(请参阅更新的小提琴):link 但我无法让它与您提供的示例一起使用。我还应该如何构建我的链接??
-
您有几个问题,请参阅我对工作示例的回答
标签: javascript bootstrap-4 user-permissions user-roles session-storage