@f_u_s_s
Любопытный кодер

Почему node.js не видит пакет при сборке через Laravel Mix (webpack)?

Столкнулся со странной проблемой: установил пакет fotorama в свой проект:
npm i fotorama --save

в папке node_modules новый пакет появился. Далее, т.к. в Laravel встроен сборщик, а мне всего лишь добавить 1 пакет надо, я решил что не буду городить gulp и т.д. а воспользуюсь тем что есть.

Я добавил в /resources/assets/sass/app.scss строчку:
// Fotorama
@import '~fotorama/fotorama.css';


Далее в /resources/assets/js/ создал файл fotorama.js:
try {
    require('fotorama');
} catch (e) {}


а в файле app.js (в той же папке) дописал строчку:
require('./fotorama');

После проделанных операций я запустил сборку командой
npm run dev

И получаю такую ошибку:

> cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js

 95% emitting

 WARNING  Compiled with 1 warnings                                                                                                                                                    03:45:58
This dependency was not found:

* fotorama in ./resources/assets/js/fotorama.js

To install it, you can run: npm install --save fotorama
                                                     Asset     Size  Chunks                    Chunk Names
   images/vendor/fotorama/fotorama.png?e95aace1dffd7b8683b30639b59614e2  3.22 kB          [emitted]
images/vendor/fotorama/fotorama@2x.png?0f1f99b65c03fe9212ae7ab962d3b9df  7.32 kB          [emitted]
                                                             /js/app.js  1.37 MB       0  [emitted]  [big]  /js/app
                                                           /css/app.css   203 kB    0, 0  [emitted]         /js/app, /js/app

WARNING in ./resources/assets/js/fotorama.js
Module not found: Error: Can't resolve 'fotorama' in 'D:\OSPanel\domains\project.loc\resources\assets\js'
 @ ./resources/assets/js/fotorama.js 2:4-23
 @ ./resources/assets/js/app.js
 @ multi ./resources/assets/js/app.js ./resources/assets/sass/app.scss


Почему так происходит? Занятно, что CSS он увидел и собрал в app.css файл стилей fotorama.css из пакета, а js-файл не видит...
  • Вопрос задан
  • 746 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы