Как настроить материал веб-компонентов с помощью laravel-mix?
Я использую mdc с laravel-mix, но он не загружает файлы scss из узловых модулей. Я пробовал некоторые другие решения о предоставлении includepaths в mix.sass, но они не работают.
Я попробовал код в webpack.mix.js
const path = require('path');
let mix = require('laravel-mix');
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css', {
includePaths: ['./node_modules']
});
но это все еще дает мне ту же ошибку, что
undefined ^ Can't find stylesheet to import. @import "@material/elevation/mixins";
0 ответов
Для Laravel 6 мне пришлось сделать это так:
npm install --save material-components-web
app.scss:@import "material-components-web/material-components-web";
webpack.mix.js:
mix.js('resources/js/app.js', 'public/js')
.sass('resources/sass/app.scss', 'public/css', {
sassOptions: {
includePaths: ['./node_modules']
}
});
Да, ответ Эдмунда Сулзанока правильный, добавьте sassOptions, но и для меня тоже:
Laravel VERSION = '6.7.0';
Мне пришлось обновить npm package.json devDependencies
"devDependencies": {
...
"cross-env": "^6.0.3",
"laravel-mix": "^5.0.1",
...,
"resolve-url-loader": "^3.1.1",
"sass": "^1.25.0",
"sass-loader": "^8.0.2",
...
},
"dependencies": {
...
"material-components-web": "^4.0.0",
...
}
После изменения package.json запустите npm install
npm install
Вы могли видеть устаревшие пакеты с
npm outdated
удачи