2017-02-13 1 views
1

У меня есть два угловых JS файлы вКак ограничить угловой модуль ('myApp', ['ngGrid', 'ui.bootstrap', 'kendo.directives']) ;?

myjs1.js и я включил

angular.module('myApp', [ 'ngGrid', 'ui.bootstrap', 'kendo.directives' ]); 

myjs2.js я также включил

angular.module('myApp', [ 'ngGrid', 'ui.bootstrap', 'kendo.directives' ]); 

эти модули. На мой HTML страниц я должен включать как JS файлы

myhtml.html

<script src="../../js/myjs1.js"></script> 
<script src="../../js/myjs2.js"></script> 

, но проблема в том, что в обоих файлах JS я должен включать angular.module('myApp', [ 'ngGrid', 'ui.bootstrap', 'kendo.directives' ]); из-за которых myhtml.html бросает ошибку, так как оба модуля ngGrid конфликтуют.

когда я удаляю angular.module('myApp', [ 'ngGrid', 'ui.bootstrap', 'kendo.directives' ]); из одного js я могу получить результат в сетке, так как не существует связи модулей. Но я не могу удалить angular.module('myApp', [ 'ngGrid', 'ui.bootstrap', 'kendo.directives' ]); из любого из js-файлов, поскольку модуль ngGrid требуется другим html-файлам.

Мой вопрос в том, как ограничить модуль ngrid, чтобы он не включался в мой один html-файл и не использовался другими файлами html.

Могу ли я управлять <html ng-app="myApp"> тегом, используемым отдельно для обоих файлов html ??

ответ

1

Создайте несколько модулей с разными именами и добавьте их в качестве зависимости к вашему модулю myApp.

Например:

module1.js

angular.module('myModule1', [ 'ngGrid', 'ui.bootstrap', 'kendo.directives' ]); 

module2.js

angular.module('myModule2', [ 'ngGrid', 'ui.bootstrap', 'kendo.directives' ]); 

app.js

angular.module('myApp', [ 'myModule1', 'myModule2' ]); 

Затем в HTML файл включить их в следующем порядке:

<script src="../../js/module1.js"></script> 
<script src="../../js/module2.js"></script> 
<script src="../../js/app.js"></script> 
+0

Великий это сработало! – Shashank

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