Для подключения пакетов из node_modules
к Laravel есть несколько подходов, в зависимости от версии Laravel, которую вы используете.
- В 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
.
- В 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.