AngularJS指令不从控制器读取数据

时间:2013-12-23 05:36:01

标签: html angularjs

我正在尝试了解角度指令并遵循此处给出的示例(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}}' 
                    };
                 });

此致

1 个答案:

答案 0 :(得分:0)

该指令目前不在控制器范围内。所以你需要在控制器范围内有指令。 html应该是这样的 -

 <div data-ng-controller = "MyCtrl">
         <div data-template-expanding-directive></div>
 </div>

如果你没有在控制器div元素中移动指令元素,那么你可以有一个父'div'元素或者从全局根范围访问数据。