我试图将AngularJS作为一个完整的n00b,使用Yeoman,grunt和bower安装所有内容。
我一直在很好地摆弄代码,但现在我仍然试图访问父作用域。见见下面的代码
'use strict';
angular.module('castLibraryApp')
.controller('library', function ($scope) {
$scope.movies = [
{title: 'Sherlock Holmes', poster: 'http://bit.ly/19p8cla'},
{title: 'Star Trek', poster: 'http://bit.ly/1eAagVa'},
];
$scope.directory = '~/Movies/';
console.log($scope.movies);
})
.controller('movie', function ($scope, $routeParams) {
$scope.section = 'View Movie';
console.log($scope.movies);
});
在我的 main.html 模板中调用库控制器,而在我的 view.html 模板中访问电影控制器。我想在视图模板中打印名称和海报等信息。
但是我一直得到未定义的变量
我知道这是一个愚蠢的错误,但非常感谢帮助
答案 0 :(得分:3)
您可以使用$scope.$parent
访问library
控制器。但这不是一个好的设计。您最好将movies
投入使用:http://docs.angularjs.org/guide/dev_guide.services.understanding_services
答案 1 :(得分:2)
在电影控制器中使用
$scope.$parent.movies
并在view.html中,使用
{{ $parent.movies }}