我有一个类似的模块
function config(msNavigationServiceProvider)
{
// Navigation
msNavigationServiceProvider.saveItem('apps', {
title : 'APPS',
group : true,
weight: 1
});
msNavigationServiceProvider.saveItem('apps.dashboards', {
title : 'Dashboards',
icon : 'icon-tile-four',
weight: 1
});
}
其中msNavigationServiceProvider
是作为核心包一部分的提供者。问题是,我想根据本地存储中的值在导航栏上隐藏Apps
项,但在config()提供程序错误中无法访问$localStorage
。我对此进行了研究,发现这是不可能的。
那个么我该怎么做才能从导航中隐藏项目呢。我不想接触核心软件包,但我也不能在代码中使用本地存储。
如有任何帮助,将不胜感激
您可以在msNavigationService
中使用隐藏属性
hidden: function ()
{
return boolean; // must be a boolean value
}
示例:
// Apps.Dashboards
msNavigationService.saveItem('apps.dashboards', {
title : 'Dashboards',
icon : 'icon-tile-four',
class : 'navigation-dashboards',
hidden: function ()
{
return AuthService.isAdmin; // must be a boolean value
},
weight: 1
});