我正在尝试了解角度指令并遵循此处给出的示例(http://docs.angularjs.org/guide/directive),编写了以下代码。任何人都可以指导我,因为我做错了控制器范围内的数据没有在指令中读取吗?该网站对此一无所知!并且在执行代码时没有错误,它只是不显示任何数据。请帮忙。
//My Html
<!DOCTYPE html>
<html data-ng-app="MyApp">
<head>
<title>Angular Directives</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body >
<div data-ng-controller = "MyCtrl"></div>
<div data-template-expanding-directive></div>
<script src="lib/angular.js"></script>
<script src="js/templateExpandingDirective.js"></script>
</body>
</html>
//My JS
'use strict';
var myapp = angular.module('MyApp',[]);
myapp.controller('MyCtrl',['$scope',function($scope){
$scope.customer = {
name: "Jenny",
place: "England"
};
}])
.directive('templateExpandingDirective',function(){
return {
template: 'Name: {{customer.name}}'
};
});
此致
答案 0 :(得分:0)
该指令目前不在控制器范围内。所以你需要在控制器范围内有指令。 html应该是这样的 -
<div data-ng-controller = "MyCtrl">
<div data-template-expanding-directive></div>
</div>
如果你没有在控制器div元素中移动指令元素,那么你可以有一个父'div'元素或者从全局根范围访问数据。