7

私は次のものを持っています:

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;
}]);
4

3 に答える 3

17

scopeAngular UI Router で親コントローラーのにアクセスするには、次を使用します。

$scope.$parent

その後、親スコープは自由に利用できます。

于 2013-10-07T08:31:09.697 に答える
0

親スコープ データにアクセスする方法 (および回避策) はいくつかありますが、コントローラーの継承自体は不可能です: https://github.com/angular-ui/ui-router/wiki/nested-states-&-nested -views#what-do-child-states-inherit-from-parent-states

于 2017-01-03T17:20:15.753 に答える