mirror of
https://github.com/tl-open-source/tl-rtc-file.git
synced 2025-10-06 16:06:52 +08:00
优化代码,优化体验,优化压缩
This commit is contained in:
86
build/webpack/dev/cli.js
Normal file
86
build/webpack/dev/cli.js
Normal file
@@ -0,0 +1,86 @@
|
||||
const webpack = require('webpack');
|
||||
const merge = require('webpack-merge');
|
||||
const path = require('path');
|
||||
|
||||
const allConfig = require('./webpackall');
|
||||
const {
|
||||
JS_PATH,
|
||||
CSS_PATH,
|
||||
} = require('../comm/path');
|
||||
|
||||
const {
|
||||
startCompilerCss,
|
||||
startCompilerJs,
|
||||
watchFile
|
||||
} = require('../comm/util');
|
||||
const deleteCssJs = require('../plugin/deleteCssJs'); // 用于对打包css生成的无用js和js.map进行删除的操作
|
||||
const watchNewEntry = require('../plugin/watchNewEntry'); // 用于watch时监听新增文件的监听
|
||||
|
||||
/**
|
||||
* 用于开发环境监听打包,打包出min版
|
||||
* @watchJs
|
||||
* @watchCss
|
||||
* * */
|
||||
class Cli {
|
||||
constructor() {
|
||||
this.jsComplier = null; // 对应 js/dist 出口
|
||||
this.cssComplier = null; // 对应 css/dist 出口
|
||||
}
|
||||
|
||||
watchJs() {
|
||||
this.jsComplier = webpack(merge(allConfig, {
|
||||
entry: watchNewEntry.getEntries(
|
||||
[
|
||||
path.resolve(JS_PATH, './!(*.min).js'),
|
||||
],
|
||||
),
|
||||
output: {
|
||||
libraryTarget: 'umd',
|
||||
globalObject: 'this',
|
||||
path: path.resolve(JS_PATH, "./"),
|
||||
filename: '[name].min.js',
|
||||
}
|
||||
}));
|
||||
|
||||
// 开始编译并且监听
|
||||
this.jsComplier.watch({
|
||||
aggregateTimeout: 400,
|
||||
ignored: [
|
||||
path.resolve(JS_PATH, "./*.min.js"),
|
||||
],
|
||||
}, startCompilerJs);
|
||||
|
||||
process.stdout.write('开始webpack编译js目录' + '\n\n');
|
||||
}
|
||||
|
||||
watchCss() {
|
||||
this.cssComplier = webpack(merge(allConfig, {
|
||||
entry: watchNewEntry.getEntries(
|
||||
[
|
||||
path.resolve(CSS_PATH, './!(*.min).css'),
|
||||
],
|
||||
),
|
||||
output: {
|
||||
libraryTarget: 'umd',
|
||||
globalObject: 'this',
|
||||
path: path.resolve(CSS_PATH, "./"),
|
||||
filename: "./cssJsDist/[name].min.js",
|
||||
},
|
||||
plugins: [
|
||||
new deleteCssJs(),
|
||||
],
|
||||
}));
|
||||
|
||||
// 开始编译监听
|
||||
this.cssComplier.watch({
|
||||
aggregateTimeout: 400,
|
||||
ignored: [
|
||||
path.resolve(CSS_PATH, "./*.min.css"),
|
||||
],
|
||||
}, startCompilerCss);
|
||||
|
||||
process.stdout.write('开始webpack编译css目录' + '\n\n');
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = new Cli();
|
Reference in New Issue
Block a user