Условная зависимость модуля angular для сценария шаблона html2js

#javascript #angularjs

#javascript #angularjs

Вопрос:

Мой процесс развертывания узла / angular компилирует мои угловые шаблоны, используя html2js . Он создает файл javascript с результатами и определяется как модуль:

 angular.module('myapp-templates', ['/templates/display', '/templates/editor', '/templates/list', '/templates/login', '/templates/pagination', '/templates/signup']);
 

Чтобы правильно включить их, мне пришлось бы добавить myapp-templates в качестве зависимости к фактическому модулю приложения.

Однако в режиме разработки myapp-templates модуль не будет существовать, поэтому angular выдает ошибку. Есть ли лучший способ загрузить dep или структурировать модули, чтобы он мог работать в любом режиме?

Комментарии:

1. Используете ли вы grunt в качестве системы сборки?

2. ДА. На данный момент я использую пользовательскую оболочку angular.module, которая объединяет их, если она уже существует. Он работает нормально, я бы предпочел не полагаться на его перегрузку таким образом.

3. У меня такая же проблема с использованием grunt-angular-templates ( github.com/ericclemmons/grunt-angular-templates ). Настройки по умолчанию в этом пакете фактически добавляют шаблоны в $templateCache с a .run в главном модуле приложения, что решит вашу проблему. К сожалению, у меня возникли проблемы с этим, и я думаю, что в любом случае лучше иметь отдельный модуль, поэтому я сделал что-то уродливое, но это работает. try { angular.module('templates') } catch(err) { angular.module('templates', []);}