userInfo用法及权限判断
userInfo是程序主动调用比如:this.$session.setUser({token:'1231231',username:'123213',username:'nickname'})。这里的整个JSON是根据你的需求写的,可以包括更多的属性值。
如果当前页面要马上生效,用this.userInfo = this.$session.getUser();
调用方法写进用户值
调用方法写进用户值 ,可以在自定义API、自定义方法、表单提交等里写进去。这里只是做个例子,具体实现参照登录教程。
this.$session.setUser({
token:'1111',
username:'DIY',
nickname:'DIYGW可视化',
//用户角色
roles:['role1','role2'],
//用户权限,这里的权限值可以很多个
permissions:['user/edit','user/del'],
})
显示用户名
拖入文本内容,绑定内容为{{userInfo.nickname}},显示判断属性增加{{userInfo.nickname}}
显示用户未登录
拖入文本内容组件,文本内容改为未登录,在显示判断属性条件显示增加判断{{!userInfo.nickname}}
判断是否包括某个角色
包括role1值
在实际应用场景中,我们可能需要根据不同的角色显示不同的页面。比如我们是否包括role1角色。
不包括role1功能值
判断包括权限标识
判断用户是否包括权限标识使用{{$auth.auth('user/edit')}},判断不需要{{!$auth.auth('user/edit')}}同样只需要在前面增加一个!号即可。
清空用户登录值
直接使用this.$session.clearUsr()来清除值。
扩展设置用户值
this.$session.setUserValue('key','value')。表示在原有的userInfo增加了一个key等于value的值。这里的key跟value自行动态替换你想要的变量跟值。
扩展获取用户值
如果在自定义方法里是想获取某个值this.$session.getUserValue('key')。模板绑定不用this.替换为{{userInfo.key}}。参照{{userInfo.nickname}}设置值。
清空用户值
调用this.$session.clearUser();如果不想跳转页面,当前绑定的页面值也想要切换显示增加this.userInfo = this.$session.getUser() || {};
生成代码
只要按上面要求写进去,其他页面都可以直接绑定{{userInfo.*}}