在指令中,为什么我们不在customer.name
添加$ scope作为前缀可以工作?我改为$scope.customer.name
,它无法正常工作?为什么?它假设有$ scope,对吗?链接(https://plnkr.co/edit/e4N2u1iuXbp7IESxNd1T?p=preview)
angular.module('docsSimpleDirective', [])
.controller('Controller', ['$scope', function($scope) {
$scope.customer = {
name: 'Naomi',
address: '1600 Amphitheatre'
};
}])
.directive('myCustomer', function() {
return {
template: 'Name: {{customer.name}} Address: {{customer.address}}'
};
});
答案 0 :(得分:0)
您分配给template
的任何内容都相当于一个HTML页面,其中正文包含您指定的内容。不要将它与角度js控制器内的代码混淆。它是一个字符串形式的HTML响应,我们不在HTML文档中使用$scope
。