Есть ли такой инжектор, как grunt-wiredep, который работает для зависимостей NPM?

В настоящее время большинство пакетов доступно как в NPM, так и в Bower. У меня должен быть NPM, но я бы хотел исключить Бауэра из своего проекта.

Я в настоящее время полагаюсь на grunt-wiredep создавать <script> включает в себя index.html, Этот инструмент просматривает все конфиги Bower для загрузки всех необходимых файлов js и css в мой index.html для меня.

Есть ли инструмент, который будет делать то же самое для зависимостей NPM?

1 ответ

Решение

Вы могли бы сделать это, используя пакетный модуль, такой как Browserify или Webpack.

Для начала работы с Browserify вам необходимо сначала установить его через NPM по всему миру.

npm install -g browserify

Затем в своем проекте получите библиотеку внешнего интерфейса, которую вы хотите включить, например, угловую библиотеку.

npm install --save angular

Теперь вам нужно будет использовать require() чтобы Browserify знал о зависимостях, которые он должен получить для работы проекта (в случае приложения Angular, где вы определяете основной модуль, добавьте эту первую строку)

var angular = require('angular');

angular
  .module('autocompleteDemo', [])
  .controller('DemoCtrl', DemoCtrl);

Для настройки задачи grunt-browserify сначала установите ее в проекте

npm install grunt-browserify --save-dev

и настройте задачу следующим образом

browserify: {
    main: {
        src: 'entry.js',
        dest: 'bundle.js'
    }
 }

Наконец, в вашем index.html вам нужно будет добавить разметку для скрипта bundle.js

<script src="bundle.js"></script>

Пример кода можно найти по адресу https://github.com/pra85/grunt-browserify-example

Другие вопросы по тегам