Очистка CSS-ресурсов с помощью Laravel Mix не работает
Описание:
Опция очистки не работает при компиляции CSS-файлов. Можете ли вы объяснить, что не так с этим подходом?
Действия по воспроизведению:
Это внутри моего файла микса:
mix.style('resources/assets/css/some.css', 'public/css/some.css').options({
purifyCss: {
paths: ['/home/smolen/Projects/laravel-test/resources/views/welcome.blade.php'],
verbose:true,
minimize:true,
}
})
Это мой CSS-файл, который остается неизменным после компиляции:
.unused-class{
color:red;
}
.used-class{
color:blue;
}
`` `
Это в моем блейд-файле:
<!doctype html>
<html lang="{{ app()->getLocale() }}">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Laravel</title>
<!-- Fonts -->
<link href="https://fonts.googleapis.com/css?family=Raleway:100,600" rel="stylesheet" type="text/css">
</head>
<body>
<div class="used-class"></div>
</body>
</html>
3 ответа
Cle anyOptions - это свойство свойства Cle anyCss:
mix.style('resources/assets/css/some.css', 'public/css/some.css').options({
purifyCss: {
purifyOptions: {
paths: ['/home/smolen/Projects/laravel-test/resources/views/welcome.blade.php'],
verbose:true,
minimize:true,
}
}
})
Не очень красиво, но я справлюсь с работой.
Начните с объявления и инициализации переменной "mix", затем установите ваши параметры, затем сделайте ваш стиль.
let mix = require('laravel-mix');
mix.options({ purifyCss: true });
mix.style('resources/assets/css/some.css', 'public/css/some.css');
style
только уменьшит ваш css. Это не применимоpurgeCss
к нему.
Чтобы очистить CSS, вы должны переименовать some.css
к some.scss
а также
mix.options({
purifyCss: true,
});
mix.sass('resources/assets/css/some.scss', 'public/css/some.css');
Вы устанавливаете свои параметры после вашего обработанного CSS.
Обратный порядок.