Laravel функция извлечения смеси не найдена - PullRequest
0 голосов
/ 08 января 2020

У меня есть довольно стандартный файл веб-пакета для моего laravel приложения

const mix = require('laravel-mix');
mix.js('resources/js/app.js', 'public/js')
    .extract("['lodash', 'axios', 'jquery','bootstrap','tether','prismjs','jquery.mb.ytplayer','owl.carousel']")
    .sass('resources/sass/app.scss', 'public/css')
    .sourceMaps();

 if (mix.inProduction()) {
    mix.version();
 }

Но npm run watch завершается с ошибкой

anadi@MacAnadi onex_web % npm run watch

> @ watch /Users/anadi/Code/github/onex/website/onex_web
> npm run development -- --watch


> @ development /Users/anadi/Code/github/onex/website/onex_web
> cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js "--watch"

/Users/anadi/Code/github/onex/website/onex_web/node_modules/webpack-cli/bin/cli.js:93
                throw err;
                ^

TypeError: extraction.libs.join is not a function

1 Ответ

2 голосов
/ 08 января 2020

Вы передали свои аргументы как строку в метод extract. Он принимает массив и, поскольку join не является функцией в String.prototype, именно это и вызывает TypeError. Изменение вашего звонка на ниже будет работать.

const mix = require('laravel-mix');
mix.js('resources/js/app.js', 'public/js')
    .extract(['lodash', 'axios', 'jquery','bootstrap','tether','prismjs','jquery.mb.ytplayer','owl.carousel'])
    .sass('resources/sass/app.scss', 'public/css')
    .sourceMaps();

 if (mix.inProduction()) {
    mix.version();
 }
...