Javascript 根据用户权限向angularJs控制器添加方法
我想知道是否有一种方法可以根据用户的权限动态扩展我的angular controller 例如,假设我们有三个不同的权限级别(管理员、主管、用户)和一个角度控制器Javascript 根据用户权限向angularJs控制器添加方法,javascript,angularjs,Javascript,Angularjs,我想知道是否有一种方法可以根据用户的权限动态扩展我的angular controller 例如,假设我们有三个不同的权限级别(管理员、主管、用户)和一个角度控制器 app.controller("myController", ["$scope", function($scope){ $scope.userFunc = function(){....}; $scope.supervisorFunc = function(){....}; $scope.adminFunc = fu
app.controller("myController", ["$scope", function($scope){
$scope.userFunc = function(){....};
$scope.supervisorFunc = function(){....};
$scope.adminFunc = function(){....};
}]);
我只想在用户拥有正确权限的情况下添加supervisorFunc和adminFunc
- 用户控制器将只包含userFunc
- Supervisor将包含userFunc和supervisorFunc
- Admin将包含所有方法(userFunc、supervisorFun和adminFunc)
有什么想法吗?我喜欢这个想法,我们也会做同样的事情 如果第二组控制器项没有新的要求(指令等),您应该能够执行以下操作: 在app.js中:
var app = angular.module('myModule', ["whatever-directive", "some-service"]);
app.config(['$httpProvider', '$locationProvider', function ($httpProvider, $locationProvider) {
..
..
}]);
..
..
在controllers.js中
function someCtrl($scope, $location, $http) {...}
function someOtherCtrl($scope, $location, $http) {...}
仅在onlyForYouControllers.js中-仅在需要时添加
function someCtrlOnlyForYou($scope, $location, $http) {...}
就像我写的那样——你必须声明应用程序中需要什么——即使它没有被一组特定的控制器使用。你能解释一下你打算如何添加权限吗。这将有助于更好地理解您的问题。@ashfaq.p基本上,权限存储在会话(服务器端)中,我会相应地向html添加js文件引用。这是个好主意,但我想扩展主控制器的$scope,以便注入的方法能够像任何其他方法一样使用$scope