Javascript 我怎样才能使这个函数小型化安全?
我明白了,这几乎是使控制器小型化安全的惯例Javascript 我怎样才能使这个函数小型化安全?,javascript,angularjs,uglifyjs,Javascript,Angularjs,Uglifyjs,我明白了,这几乎是使控制器小型化安全的惯例 angular.module('myApp',[]) .controller('MyController',['myService',function(myService){ //用我的服务做点什么 }]);这应该有效,将两个函数变量移动到控制器中。如果这不起作用,您可能需要首先在主控制器函数中获取对“this”的引用:var vm=this然后使用vm.$q angular.module('myApp', []) .controller('MyCo
angular.module('myApp',[])
.controller('MyController',['myService',function(myService){
//用我的服务做点什么
}]);代码>这应该有效,将两个函数变量移动到控制器中。如果这不起作用,您可能需要首先在主控制器函数中获取对“this”的引用:var vm=this
然后使用vm.$q
angular.module('myApp', [])
.controller('MyController', ['myService', '$q', '$injector', function (myService, $q, $injector) {
// Do something with myService
function redirectWhenLoggedOut() {
return {
responseError: function (rejection) {
var $state = $injector.get('$state');
var rejectionReasons = ['token_not_provided', 'token_expired',
'token_absent', 'token_invalid'
];
angular.forEach(rejectionReasons, function (value, key) {
if (rejection.data.error === value) {
localStorage.removeItem('user');
$state.go('main.login');
}
});
return $q.reject(rejection);
};
}]);
可能从重定向开始,$injector=['$q','$injector']
。这样您的方法参数就不会丢失。这样做似乎会使重定向WhenLoggeDout成为未定义的