我正在构建一个离子应用程序。该应用程序有大约30个视图。其中一些是锁定的,用户无法通过某种原因与他们进行交互。如果用户扫描条形码,则应将大约10个视图替换为其他内容。这不是很多。扫描后应该保持一致。因此重新启动将显示未锁定的内容。我是否必须使用CSS和隐藏/显示,或者有更好的解决方案吗?
答案 0 :(得分:2)
如果我必须在离子和角度中做到这一点。
我会维护一个可以访问的对象或项目/状态数组。
每当我必须允许用户访问某个状态时,我会将该状态添加到允许的数组/对象中,以便可以访问它。
现在,如果在同一页面上我必须根据权限显示内容,我会做类似下面的内容
<div ng-if="state | permissions ">
我的数组就像是
var permissions = {
'all' :{'state':['home']},
'user' :{'state':['home','question'},
'admin':{'state':['home','admin','users']}
和过滤器看起来像
.filter('permissions',function(){
return function(role){
return permissions[role].state
// implement contains functionality
}
});