目前,我正在使用webpack.mix.js在Laravel 5.6中将JS和CSS转换为一个文件。我在JS资产目录的app.js文件中合并了一些JS文件。关于CSS,我在CSS资产目录中有一个SCSS文件,我将其转换为CSS文件,然后与NPM中的其他CSS文件合并。为此,我将CSS文件生成到/public/css/app.css中,然后将该文件与其他CSS文件合并到相同的/public/css/app.css文件中,从而将其覆盖。所有这些都可以,并且代码如下:
const { mix } = require('laravel-mix');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel application. By default, we are compiling the Sass
| file for the application as well as bundling up all the JS files.
|
*/
mix.js('resources/assets/js/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css')
.styles([
'node_modules/bootstrap/dist/css/bootstrap.css',
'node_modules/font-awesome/css/font-awesome.css',
'node_modules/weather-icons/css/weather-icons.css',
'public/css/app.css',
], 'public/css/app.css')
.copyDirectory('node_modules/weather-icons/font', 'public/font')
.copyDirectory('node_modules/font-awesome/fonts', 'public/fonts');
当我尝试开始对文件进行版本控制时,通过在末尾添加.version()
,我无法将CSS与其他CSS文件合并。混合版本会自动对所有生成的文件进行版本控制,因此最终会生成两个版本化的app.css文件。如何生成一个临时文件,然后与其他CSS文件合并?