javascript - 在 Angularjs 中,如何阻止用户访问某些页面?

标签 javascript angularjs angular-ui-router angularjs-config

我正在使用 ui-router$stateProvider 来显示 View 。

本项目用于搭建管理页面,共有三个账号。

我的目的是某些页面必须只显示给每个帐户。

因此,我使用ng-if 不在nav-bar 上显示,它成功了。

但如果键入其 url 并直接访问,则会显示这些页面。

有什么方法可以在 `configs' 中创建分支吗?或者其他方法来解决这个问题?

我觉得这个问题不需要贴fiddle或者plunker,

所以我刚刚放置了我的configs代码。

$urlRouterProvider.otherwise('/admin/login');
$stateProvider
.state('root.for_a', {
    url: '/:brand_id/for_a',
    views: {
        'appContainer@': {
            templateUrl: 'views/for_a.html',
            controller: 'ForACtrl',
        }
    }
})
.state('root.for_b', {
    url: '/:brand_id/for_b',
    views: {
        'appContainer@': {
            templateUrl: 'views/for_b.html',
            controller: 'ForBCtrl',
        }
    }
})
.state('root.for_c', {
    url: '/:brand_id/for_c',
    views: {
        'appContainer@': {
            templateUrl: 'views/for_c.html',
            controller: 'ForCCtrl',
        }
    }
})

我会等待任何英俊或漂亮的程序员可以帮助我。 :)

提前致谢。

最佳答案

我为克服类似问题所做的是,在“ui-view”标签上使用“ng-if”。

 <ui-view ng-if="functionToEvaluatePermissions()"></ui-view>
 <span ng-if="!functionToEvaluatePermissions()"> You shouldn't be here. </span>

关于javascript - 在 Angularjs 中,如何阻止用户访问某些页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46926209/

相关文章:

angularjs - 使用 Angular-Translate 时,我的 lang 文件加载了两次

angularjs - 无法使用 ui-router-extras Sticky State 转换到先前激活的状态

javascript - ui-sref-active 在多个状态

javascript - 尝试从 Controller 更新 View 时,AngularJS undefined variable

javascript - 使用 TensorFlowJS 进行简单线性回归

javascript - 即使从 iPad iOS7 中的 DOM 中删除,如何停止播放 HTML5 音频

javascript - 如何使用javascript扩展和关闭导航栏移动

javascript - AngularJS 代码挂起浏览器

angularjs - 在 Angular UI-Router 的动态 View 中添加一个 SEO 友好的 Url Slug

javascript - 如何在 HTML Canvas 中以给定 Angular 找到距离给定坐标最近的坐标