Подтвердить что ты не робот

Как включить и использовать модули node в вашем приложении Ionic/AngularJs?

У меня есть приложение 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?

4b9b3361

Ответ 1

Принятый ответ более не точен для Ionic V2, а .bowerrc был удален из установки по умолчанию.

Вот как вы это делаете сейчас, из официальных документов Ionic V2.

Ответ 2

Принятый ответ неверен. Чтобы добавить клиентские модули в ваше приложение 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, я считаю, что необходимость внесения вручную изменений в установку часто является первым признаком того, что я сделал это неправильно!

Ответ 3

  • Поместите каталог 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 везде в своем приложении.