Как внедрить внешние модули в одностраничное приложение AngularJS без инжектора / модулятора?

0

Я новичок в AngularJS, и у меня проблемы каждый раз, когда я следую учебному курсу и добавляю внешний модуль. И у меня есть некоторые вопросы о том, как не получить инъекционные ошибки.

Q1. Как я могу решить проблему с инжектором/модулем? Я использовал bower для установки "ngSanitize", включенный в HTML как:

<body ...>

 <script src="assets/js/angular.min.js"></script>
        <script src="bower_components/ngSanitize/index.js" type="text/javascript"></script>

</body>

Q2. Если порядок добавления модулей влияет на результаты, есть ли плагин для NetBeans или онлайн-приложение для проверки зависимостей модулей, чтобы их можно было добавить по порядку?

Q3. Наконец, каковы правильные шаги для ввода внешних модулей в одностраничное приложение AngularJS без инжектора/модулятора?

Оригинал:

angular.module('app', [
    'ngRoute', 
    'ngAnimate', 
    'angularMoment', 
    'angular-preload-image',
    'truncate',
    'app.core'
  ]);

Объектная ситуация, которая вызывает ошибку впрыска для "ngSanitize":

angular.module('app', [
    'ngRoute', 
    'ngSanitize', 
    'ngAnimate', 
    'angularMoment', 
    'angular-preload-image',
    'truncate',     
    'app.core' 
  ]);

Отображаемая ошибка, которая приводит к сбою загрузки приложения

Я получил ту же ошибку, используя angularjs.org/1.4.8.

  • 0
    Вы должны использовать angular-sanitize.js вместо ngSanitize/index.js .
  • 0
    Попробую, тогда когда использовать мин версию или другую? <script src = "bower_components / angular-sanitize / angular-sanitize.min.js" type = "text / javascript"> </ script> <script src = "bower_components / angular-sanitize / angular-sanitize.js" type = "текст / JavaScript"> </ скрипт>
Теги:

1 ответ

0
Лучший ответ

Основная проблема, по-моему, заключается в использовании этого конкретного ngSanitize.

Вы должны установить его, используя: bower install angular-sanitize и not bower install ngSanitize.

Несмотря на то, что это связано с тем же, ngSanitize, согласно описанию репо:

модуль угловой санитарии без включения угловых.js для магистральной и других каркасов

Как вы можете видеть, они принадлежат разным репозиториям:

Угловая дезинфекция: https://github.com/angular/bower-angular-sanitize

ngSanitize: https://github.com/gdi2290/ngSanitize

Загрузка скрипта в HTML важна. Я всегда начинаю с вставки jQuery, затем с angular, затем с угловыми определенными модулями, такими как (angular-animate, angular-sanitize и т.д.), А затем мои собственные скрипты с угловыми модулями.

Что касается Q3, я не думаю, что вы испортили модульную инъекцию. Это просто показало, что ошибка из-за использования ngSanitize вместо angular-sanitize.

  • 0
    Спасибо. Это решено.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню