首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在vue项目中添加权限控制?

如何在vue项目中添加权限控制?
EN

Stack Overflow用户
提问于 2017-07-27 03:28:12
回答 2查看 1.9K关注 0票数 1

我正在将vue js添加到我当前的laravel应用程序中,这样我就可以使它成为SPA,这意味着laravel只是充当后端,其余部分则由vue js控制,从呈现视图到路由。

我当前的laravel应用程序使用柯丁拉拉-acl来控制哪个页面和我的用户可以通过简单的操作完成哪些操作。

把这个放在路线上:

代码语言:javascript
复制
Route::get('admin', [
        'as'           => 'admins.admin.index',           
        'uses'         => 'UserController@index',
        'middleware'   => ['auth', 'acl'],
        'can'          => 'view.admin_view']);

如果我这样做只是为了隐藏一些操作,如果用户没有权限

代码语言:javascript
复制
@permission('view.admin_view')
   //some link or button          
@endpermission

所有这些权限都存储在mysql数据库中,每个用户都有不同的权限集。

但是如果我把它变成js SPA,怎么做呢?因为所有的路线都是通过vue js控制的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-07-27 03:33:26

您可以在通过beforeEnter() ( routeConfig )到达特定路由之前执行检查。样品在这里:

代码语言:javascript
复制
const router = new VueRouter({
  routes: [
    {
      path: '/foo',
      component: Foo,
      beforeEnter: (to, from, next) => {
        // ... Do your checkings here
      }
    }
  ]
})

票数 0
EN

Stack Overflow用户

发布于 2017-12-21 06:22:23

要简单地使用权限检测逻辑,可以使用CASL https://github.com/stalniy/casl

在文档中有很多有趣的内容,关于中介的文章解释了如何与Vue和其他流行框架集成!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45340868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档