为什么不添加$ scope可以工作?

时间:2017-01-08 18:35:44

标签: angularjs

在指令中,为什么我们不在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}}'
  };
});

1 个答案:

答案 0 :(得分:0)

您分配给template的任何内容都相当于一个HTML页面,其中正文包含您指定的内容。不要将它与角度js控制器内的代码混淆。它是一个字符串形式的HTML响应,我们不在HTML文档中使用$scope