Laravel-MIX:删除 combine/merge 后未使用的文件
Laravel-MIX: Remove unused files after combine/merge
我是 Laravel-mix
和 webpack
的新人。经过一些练习,我能够将 css 和 js 文件分别合并为 1 个文件。但是,合并后其他文件仍然存在,对应用程序没有用。
例如:
resources
|-- scss
|-- font-awesome.scss
|-- template.scss
public
|-- css
|-- font-awesome.css
|-- template.css
合并后:
public
|-- css
|-- font-awesome.css
|-- template.css
|-- combined.min.css (font-awesome.css + template.css = combined.min.css)
Webpack
mix
.sass('resources/sass/font-awesome.scss', 'public/css/font-awesome.css')
.sass('resources/sass/template.scss', 'public/css/template.css');
// combining css files
mix.combine([
'public/css/font-awesome.css',
'public/css/template.css'
], 'public/css/combined.min.css');
由于 font-awesome.css
和 template.css
文件合并为 combined.min.css
,因此不再需要它们,javascript
文件也是如此。
如何删除这些无用的文件,这可能吗..?
这是我找到解决方案的 link
webpack.mix.js:
...
const del = require('del');
const env = process.env.NODE_ENV || 'dev';
mix
.sass('resources/sass/font-awesome.scss', 'public/css/font-awesome.css')
.sass('resources/sass/template.scss', 'public/css/template.css');
// combining css files
mix.combine([
'public/css/font-awesome.css',
'public/css/template.css'
], 'public/css/combined.min.css').then(() => {
if (env === 'production') {
del('public/css/font-awesome.css');
del('public/css/template.css');
}
});
我是 Laravel-mix
和 webpack
的新人。经过一些练习,我能够将 css 和 js 文件分别合并为 1 个文件。但是,合并后其他文件仍然存在,对应用程序没有用。
例如:
resources
|-- scss
|-- font-awesome.scss
|-- template.scss
public
|-- css
|-- font-awesome.css
|-- template.css
合并后:
public
|-- css
|-- font-awesome.css
|-- template.css
|-- combined.min.css (font-awesome.css + template.css = combined.min.css)
Webpack
mix
.sass('resources/sass/font-awesome.scss', 'public/css/font-awesome.css')
.sass('resources/sass/template.scss', 'public/css/template.css');
// combining css files
mix.combine([
'public/css/font-awesome.css',
'public/css/template.css'
], 'public/css/combined.min.css');
由于 font-awesome.css
和 template.css
文件合并为 combined.min.css
,因此不再需要它们,javascript
文件也是如此。
如何删除这些无用的文件,这可能吗..?
这是我找到解决方案的 link webpack.mix.js:...
const del = require('del');
const env = process.env.NODE_ENV || 'dev';
mix
.sass('resources/sass/font-awesome.scss', 'public/css/font-awesome.css')
.sass('resources/sass/template.scss', 'public/css/template.css');
// combining css files
mix.combine([
'public/css/font-awesome.css',
'public/css/template.css'
], 'public/css/combined.min.css').then(() => {
if (env === 'production') {
del('public/css/font-awesome.css');
del('public/css/template.css');
}
});