2015-12-15 5 views
0

мне нужно, чтобы отобразить таблицу с двумя столбцами в приборной панели, используя директиву вызова контроллера с помощью анонимной функции и я получаю ошибки внутри angular.js модуля:Угловая с помощью анонимной функции

index.html страницы

<!DOCTYPE html> 
<html> 
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.8/angular-route.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.0-rc.0/angular-animate.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.0-rc.0/angular-animate.min.js"></script> 


<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.0-rc.0/angular-sanitize.min.js"></script> 

<script type="application/javascript" src="TableView.js"></script> 
    <body ng-app="myNgApp"> 
     <div > 
      <hpdTable></hpdTable> 
     </div> 
    </body> 
</html> 

TableView.js страница

angular.module('myNgApp').directive('hpdTable', TableView); 

function TableView(){ 

     return { 
      restrict: 'E', 
      controller: function ($scope){ 
       $scope.names = [ 
            { 
            "Name": "Security", 
            "Number": "546543254" 
            }, 
            { 
            "Name": "System", 
            "Number": "123456789" 
            }, 
            { 
            "Name": "Cloud", 
            "Number": "9876564321" 
            } 
           ]; 
      }, 
      templateUrl: 'TableView.html' 
    }; 
} 

TableView.html страница

<table> 
    <tr ng-repeat="n in names"> 
    <td>{{ n.Name }}</td> 
    <td>{{ n.Number }}</td> 
    </tr> 
</table> 
</div> 

Что не так?

+0

Использовать '' вместо этого. – dipesh

+0

Спасибо dipseh, но я все еще получаю ошибку Ошибка при отсутствии: [$ injector: nomod] http://errors.angularjs.org/1.4.8/$injector/nomod?p0=myNgApp(анонимная функция) @ угловая. js: 38 (анонимная функция) @ angular.js: 2005b @ angular.js: 1929 (анонимная функция) @ angular.js: 2003 (анонимная функция) @ TableView.js: 1 angular.js: 38 Ошибка нечистоты: [$ инжектор: modulerr] http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=myNgApp&p1=Error%3A...ogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.4.8%2Fangular.min.js % 3A19% 3A463) –

+0

Не могли бы вы сделать plnkr с кодом? Это помогает воспроизвести вашу проблему. – robe007

ответ

2

Если директива называется «hpdTable», в вашем HTML тега вы должны использовать:

<hpd-table></hpd-table> 

верблюд случая имя директивы всегда separed с «-» в теге HTML.

EDIT:

Эта ошибка вы сообщаете, потому что вы должны inicialize ваш модуль приложения. Включите эту строку кода в начале вашего js

angular.module('myNgApp', []); 
angular.module('myNgApp').directive('hpdTable', TableView); 
+0

все еще не работает ... см. Ошибку: –

+0

Ошибка нечистоты: [$ инжектор: номод] http://errors.angularjs.org/1.4.8/$injector/nomod?p0=myNgApp(анонимная функция) @ угловая. js: 38 (анонимная функция) @ angular.js: 2005b @ angular.js: 1929 (анонимная функция) @ angular.js: 2003 (анонимная функция) @ TableView.js: 1 angular.js: 38 Ошибка нечистоты: [$ инжектор: modulerr] http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=myNgApp&p1=Error%3A...ogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.4.8%2Fangular.min.js % 3A19% 3A463) –

+0

См. Мое редактирование, возможно, это поможет –

Смежные вопросы