子状态不从父状态继承已解决的依赖关系

Child state not Inheriting resolved dependencies from parent state

这是我的代码

$stateProvider
        .state('admin', {
            abstract: true,
            templateUrl: "views/common/content.html",
            resolve: {
                channel: function($stateParams){
                    return $stateParams.id
                }
            }
        })
        .state('admin.dash',{
            url: "/dash",
            templateUrl: "views/admin/admin_dash.html"
       })

而且我有很多使用 ng-controller 的 admin_dash.html 视图控制器。在这些控制器(子)中的任何一个中,我都无法注入 'channel' 这是父状态的已解决依赖项,应该继承。

resolve 注射器将不适用于任何旧的 ng-controller,但仅适用于指定给该州的控制器。

例如

$stateProvider
    .state('admin', {
        abstract: true,
        templateUrl: "views/common/content.html",
        resolve: {
            channel: function($stateParams){
                return $stateParams.id
            }
        }
    })
    .state('admin.dash',{
        url: "/dash",
        templateUrl: "views/admin/admin_dash.html",
        // Injectable here
        controller: function(channel, $rootScope) {
            console.log('Received channel from parent resolve:', channel);
            // If need for ng-controller bound controllers...
            $rootScope.channel = channel;
        }
    })