如何让不同角色登录后显示不同的首页

提问 4 2627
版本:renren-security 2.0 企业版 开发环境:不相关
最近有个需求,需要让不同的角色在登陆后,显示不同的首页,首页上需要显示一些跟这个用户有关的业务信息,未来还需要显示流转到这个人的审批流的列表。目前来看,所有用户登陆后都是同一个首页,前端模板应该是@/views/modules/home.vue。想到可行的方案是: 在@/views/modules/home.vue中,想办法判断一下角色,硬编码一些条件代码块,实现对应不同的角色,显示不同的页面元素和不同的数据 想请专家能够指点一下,上述方法是否可行,有没有什么需要注意的细节。 另外,也想请教是否有更好的方案,例如:实现能够在角色设置那一块配置角色专用首页,直接创建相应的页面模板,如果可行,也请给予实现方面的提示。 非常感谢您的回复和支持!
回帖
  • 可以在登录哪里做判断,登录的时候,返回角色信息,再根据角色信息,展示对应的页面 可以看下login.vue模块
    0
  • dinner3000
    2019-03-27
    我看了login.vue, 看到如下代码: [pre] // 表单提交 dataFormSubmitHandle: debounce(function () { this.$refs['dataForm'].validate((valid) => { if (!valid) { return false } this.$http.post('/login', this.dataForm).then(({ data: res }) => { if (res.code !== 0) { this.getCaptcha() return this.$message.error(res.msg) } Cookies.set('token', res.data.token) this.$router.replace({ name: 'home' }) }).catch(() => {}) }) }, 1000, { 'leading': true, 'trailing': false }) [/pre] 您意思是在: [pre] this.$router.replace({ name: 'home' }) [/pre] 这里使页面路由到我需要的页面模板,模板路径应为 @/views/modules/[some_role_home].vue, 对吗?
    0
  • @dinner3000 是这个意思
    0
  • dinner3000
    2019-03-27
    谢谢!
    0
本帖已结贴