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.
 
 
 
 
 
 

35 lines
1.2 KiB

/**
* 开发环境下启动 webpack dev server
*/
const path = require('path'); // path
const { merge } = require('webpack-merge'); // webpack 配置合并函数
const common = require('./webpack.config.common.cjs'); // webpack 通用配置
const mf = require('./webpack.config.mf.cjs'); // webpack 模块联邦配置
const { RemoteFrontEndModuleRegister } = require('./util-frontend-register.cjs'); // 远程模块注册器
module.exports = (env)=> merge(common, mf,{
mode: 'development',
devtool: 'eval',
devServer: {
client: {
overlay: false,
},
static: {
directory: path.join(__dirname, 'public'),
},
compress: false,
port: 3001,
hot: true,
// 保证在出现 404 错误时,能够导航到 index.html
historyApiFallback: true,
setupMiddlewares: (middlewares, devServer) => {
// 注册前端模块到远程服务器
const register = new RemoteFrontEndModuleRegister(devServer);
// 延后 5 秒执行, 且每 5 秒执行一次
register.regist(5000,5000);
return middlewares;
}
},
});