Ответ 1
Принятый ответ более не точен для Ionic V2, а .bowerrc
был удален из установки по умолчанию.
Вот как вы это делаете сейчас, из официальных документов Ionic V2.
У меня есть приложение Ionic, и я хотел бы включить модуль node angular-base64 для использования в моих контроллерах или даже для переноса внутри angular сервис и т.д. Я пошел вперед и побежал
npm install angular-base64
Что было сделано, и установил папку, содержащую angular-base64.min.js
файл внутри /myIonicApp/node_modules/
. Таким образом, полный путь к файлу - /myIonicApp/node_modules/angular-base64/angular-base64.min.js
.
Однако, когда я пытаюсь использовать модуль в одном из моих контроллеров, например:
app.controller('myController', ['$scope', '$base64',
function($scope, $base64) {
//$base64...
}
]);
Он понятия не имеет, о чем я говорю. Нужно ли мне что-то делать, чтобы заставить это работать? Возможно, что-то в моем app.js
?
Принятый ответ более не точен для Ionic V2, а .bowerrc
был удален из установки по умолчанию.
Вот как вы это делаете сейчас, из официальных документов Ionic V2.
Принятый ответ неверен. Чтобы добавить клиентские модули в ваше приложение Ionic/AngularJS, вы должны использовать Bower, а не NPM. NPM следует использовать только для установки модулей, которые являются частью процессов разработки/сборки/развертывания. Все, что вы хотите встретить своим пользователям как часть клиентского пакета, должно управляться Bower.
Если вы посмотрите в файле .bowerrc
, вы увидите следующее:
{
"directory": "www/lib"
}
Эта конфигурация устанавливает каталог www/lib
в качестве дома для всего, что установлено bower. Если вы используете следующую команду, пакет будет установлен в правильном месте:
bower install --save angular-base64
(Флаг --save
сохраняет зависимость в вашем файле bower.json
.)
Теперь вы можете добавить тег script в свой index.html
файл: <script src="lib/angular-base64/angular-base64.min.js"></script>
Вам также потребуется ввести модуль в ваше приложение, как описано выше. В app.js
добавьте модуль следующим образом: angular.module('starter', ['base64'])
При использовании таких инструментов, как Bower или NPM, я считаю, что необходимость внесения вручную изменений в установку часто является первым признаком того, что я сделал это неправильно!
Поместите каталог angular-base64/angular-base64.min.js
в www/lib
.
Включите JS файл в index.html
(например: <script src="lib/angular-base64/angular-base64.min.js"></script>
.
Вставьте модуль в app.js
: angular.module('starter', ['base64'])
.
Впоследствии вы сможете использовать base64
везде в своем приложении.