ui-路由器使用缩小参数注释解析?
ui-router annotating resolve with parameters for minifying?
ui-如果代码未正确注释,路由器会在缩小时中断。我已经做到了这一点,而且我的大部分路线都有效,但这尤其无效:
var authRedirect = function(s) {
return ['$state', '$q', 'AuthService', function($state, $q, AuthService) {
var d = $q.defer();
var is_auth = AuthService.checkAuth();
if(!is_auth) {
d.reject();
$state.go(s);
} else
d.resolve();
return d.promise;
}];
}
// ...
.state('secret', {
url: '/secret',
controller: 'TestCtrl',
templatesUrl: '/test.html',
resolve: { authRedirect: authRedirect('other') }
})
.state('other', { .... } )
我正在将另一种状态传递到我的 resolve
函数中,如果不满足某些条件,它应该重定向到该状态。我在其他几个路由中使用了这个 resolve 函数,所以这是保持 ui-router 代码干净的便捷方法。
虽然非缩小版工作正常,但缩小版不起作用(它什么都不做)。但似乎我已经正确注释了它,因为没有抛出任何错误。有什么问题吗?
请用
更新代码
.state('secret', {
url: '/secret',
controller: 'TestCtrl',
templatesUrl: '/test.html',
resolve: { authRedirect: ['authRedirect', function(authRedirect){ return authRedirect('other')}] }
})
您也可以像这样更新代码试试
.state('secret', {
url: '/secret',
controller: 'TestCtrl',
templatesUrl: '/test.html',
resolve: { authRedirect: function() { return authRedirect('other')} }
})
ui-如果代码未正确注释,路由器会在缩小时中断。我已经做到了这一点,而且我的大部分路线都有效,但这尤其无效:
var authRedirect = function(s) {
return ['$state', '$q', 'AuthService', function($state, $q, AuthService) {
var d = $q.defer();
var is_auth = AuthService.checkAuth();
if(!is_auth) {
d.reject();
$state.go(s);
} else
d.resolve();
return d.promise;
}];
}
// ...
.state('secret', {
url: '/secret',
controller: 'TestCtrl',
templatesUrl: '/test.html',
resolve: { authRedirect: authRedirect('other') }
})
.state('other', { .... } )
我正在将另一种状态传递到我的 resolve
函数中,如果不满足某些条件,它应该重定向到该状态。我在其他几个路由中使用了这个 resolve 函数,所以这是保持 ui-router 代码干净的便捷方法。
虽然非缩小版工作正常,但缩小版不起作用(它什么都不做)。但似乎我已经正确注释了它,因为没有抛出任何错误。有什么问题吗?
请用
更新代码.state('secret', {
url: '/secret',
controller: 'TestCtrl',
templatesUrl: '/test.html',
resolve: { authRedirect: ['authRedirect', function(authRedirect){ return authRedirect('other')}] }
})
您也可以像这样更新代码试试
.state('secret', {
url: '/secret',
controller: 'TestCtrl',
templatesUrl: '/test.html',
resolve: { authRedirect: function() { return authRedirect('other')} }
})