我正在根据已经接受的答案和评论中提到的 github 问题编写解决方案。
我使用的方法resolve
是$routeProvider
. 就我而言,当用户转到/logout时,我试图在我的应用程序中创建一个很好的注销解决方案。
示例代码$routeProvider
:
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider.
...
when('/logout', {
resolve: {
logout: ['logoutService', function (logoutService) {
logoutService();
}]
},
}).
...
}]);
在解析部分,您按名称指定服务(工厂),稍后您必须调用它。它仍然是最好的解决方案。
为了使示例完整,我提出了我的logoutService
:
angular.module('xxx').factory('logoutService', function ($location, Auth) {
return function () {
Auth.setUser(undefined);
$location.path('/');
}
});
效果很好!