Для подключения пакетов из node_modules
к Laravel есть несколько подходов, в зависимости от версии Laravel, которую вы используете.
1. В Laravel 5.7 и выше:
В версии Laravel 5.7 и выше добавлено автоматическое подключение пакетов из node_modules
. Для этого вам нужно запустить команду npm install
, которая установит все зависимости проекта из файла package.json
, включая пакеты, необходимые для фронтенда. После этого файл webpack.mix.js
(находится в корневой директории проекта) автоматически подключит все файлы из node_modules
, определенные вами в resources/js/app.js
и resources/sass/app.scss
. Результатом будет один объединенный файл public/js/app.js
и один объединенный файл public/css/app.css
, которые будут содержать код из node_modules
.
2. В Laravel 5.6 и ниже:
Если вы используете Laravel 5.6 или более раннюю версию, вам придется добавить несколько дополнительных шагов для подключения пакетов из node_modules
:
- Установите все необходимые пакеты с помощью команды npm install
.
- Создайте новую директорию resources/assets/vendor
в корневой папке проекта.
- Скопируйте файлы из node_modules
в resources/assets/vendor
. Например, если вы хотите подключить пакет jQuery, скопируйте файл jquery.js
из node_modules/jquery/dist/jquery.js
в resources/assets/vendor/jquery.js
.
- Откройте файл webpack.mix.js
, который находится в корневой папке проекта, и добавьте следующую строку после строки, содержащей mix.js('resources/js/app.js', 'public/js')
:
mix.copy('resources/assets/vendor', 'public/vendor');
Эта строка скопирует файлы из resources/assets/vendor
в public/vendor
.
- Запустите команду npm run dev
или npm run watch
. Это скомпилирует ваши ресурсы и создаст папку public/vendor
, в которой будут находиться скопированные файлы из node_modules
.
После выполнения этих шагов вы сможете подключить скопированные файлы в ваш layout
или view
, используя стандартные средства Laravel для подключения стилей и скриптов.
Теперь вы можете использовать пакеты из node_modules
в вашем проекте Laravel.