angularjs - 使用 ui-router 时, Controller 可以从父 Controller 继承范围吗

标签 angularjs angular-ui-router

我有以下几点:

var admin = {

   name: 'admin',
    url: '/admin',
    views: {
        'nav-sub': {
            templateUrl: '/Content/app/admin/partials/nav-sub.html',
            controller: function ($scope) { $scope.message = "hello"; }
        }
    },
    controller: ['$scope', function ($scope) {
        $scope.message = "hello";
    }]
}

var subject = {
    name: 'subject',
    parent: admin,
    url: '/subject',
    views: {
        'grid@': {
            templateUrl: '/Content/app/admin/partials/grid-subject.html',
            controller: 'AdminGridSubjectController',
        }
    }
};

我希望 AdminGridSubjectController 知道 $scope.message 值是什么,但它似乎一无所知。有什么我做错了吗?
stApp.controller('AdminGridSubjectController', ['$scope', function ( $scope ) {
    var a = $scope.message;
}]);

最佳答案

为了访问scope Angular UI Router 中的父 Controller 使用:

$scope.$parent

然后,您可以免费使用父作用域。

关于angularjs - 使用 ui-router 时, Controller 可以从父 Controller 继承范围吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16634289/

相关文章:

javascript - Angular.js - 在范围内使用函数的优雅方式

javascript - 选项 url 路径 UI-Router

angularjs - Angular ui.router,创建一个可选的第一个路径参数

javascript - 错误 : $injector:modulerr Module Error with ui-router

javascript - Angular - 使用 Base64 图像缓存数据

javascript - ng-repeat 基于点击的数据切换

javascript - Angularjs ui-router 在 html5 启用模式下不起作用

javascript - Angular js $state.go 参数不起作用

javascript - AngularJS 将作用域中的值插入到 ng-click 中

javascript - 是否可以使用javascript捕获浏览器地址栏中的URL更改