У меня есть следующий угловой модуль в файле:
angular.module('swagger', [])
.factory('swaggerApi', function () {
return new Swagger({
url: 'http://localhost:8081/api-docs',
usePromise: true
});
});
После этого в другом файле я пытаюсь использовать этот модуль следующим образом, где "swagger" - это имя модуля:
angular.module('GlobalFactoryMethodes', ['swagger'])
в моем html файле сначала загружаю модуль "swagger" и второй "GlobalFactoryMethodes". Однако я получаю следующее сообщение об ошибке:
Error: [$injector:modulerr] Failed to instantiate module swagger due to:
Ошибка: [$ инжектор: nomod] Модуль 'swagger' недоступен! Вы либо ошибочно написали имя модуля, либо забыли загрузить его. Если регистрация модуля гарантирует, что вы укажете зависимости в качестве второго аргумента.
Я новичок в угловой и думал, что это то, как модули предполагают работать, я что-то делаю неправильно?
попробуй это:
angular.module('swagger', []);
angular.module('swagger')
.factory('swaggerApi', function () {
return new Swagger({
url: 'http://localhost:8081/api-docs',
usePromise: true
});
});
Теперь добавьте новый модуль:
angular.module('GlobalFactoryMethodes', ['swagger'])
Хорошей практикой является объявление всех зависимостей модулей в одном файле, который загружается первым:
index.js:
angular.module('swagger', []);
angular.module('GlobalFactoryMethodes', ['swagger']);
А затем просто расширьте каждого из поставщиков:
swagger.js:
angular.module('swagger')
.factory('swaggerApi', swaggerApi);