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')} }
})