You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.7 KiB
67 lines
1.7 KiB
5 years ago
|
const webpack = require('webpack');
|
||
|
const merge = require('webpack-merge');
|
||
|
const path = require('path');
|
||
|
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
||
|
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
||
|
|
||
|
const chokidar = require('chokidar');
|
||
|
const { execSync } = require('child_process');
|
||
|
|
||
|
const dirs = require('./dirs');
|
||
|
|
||
|
const common = require('./webpack.common.js');
|
||
|
|
||
|
// 监听java文件改变自动编译java
|
||
|
chokidar
|
||
|
.watch('../constants/*.java', { ignored: /(^|[/\\])\../ })
|
||
|
.on('all', (event, path) => {
|
||
|
try {
|
||
|
execSync('npm run const');
|
||
|
} catch (e) {
|
||
|
console.error(e);
|
||
|
}
|
||
|
});
|
||
|
|
||
|
// 监听国际化文件并编译
|
||
|
chokidar
|
||
|
.watch('../i18n/*.properties', { ignored: /(^|[/\\])\../ })
|
||
|
.on('all', (event, path) => {
|
||
|
try {
|
||
|
execSync('npm run i18n');
|
||
|
} catch (e) {
|
||
|
console.error(e);
|
||
|
}
|
||
|
});
|
||
|
|
||
|
module.exports = merge(common, {
|
||
|
devtool: 'eval-source-map',
|
||
|
output: {
|
||
|
path: dirs.DEST,
|
||
|
filename: 'show.dev.js',
|
||
|
},
|
||
|
devServer: {
|
||
|
contentBase: path.join(__dirname, '..'),
|
||
|
port: 10002,
|
||
|
liveReload: true,
|
||
|
proxy: {
|
||
|
'/webroot/decision/V10': {
|
||
|
target: 'http://api.fanruan.design/mock/135/',
|
||
|
secure: false,
|
||
|
},
|
||
|
'/webroot/decision/resources': {
|
||
|
target: 'http://localhost:8075',
|
||
|
secure: false,
|
||
|
}
|
||
|
},
|
||
|
},
|
||
|
plugins: [
|
||
|
new MiniCssExtractPlugin({
|
||
|
path: dirs.DEST,
|
||
|
filename: 'show.dev.css',
|
||
|
}),
|
||
|
new HtmlWebpackPlugin({
|
||
|
template: path.resolve(__dirname, '../index.html'),
|
||
|
}),
|
||
|
],
|
||
|
});
|