dio-cli
Version:
CLI for scaffolding dio-cli projects , 前端项目, 构建工具
36 lines (32 loc) • 1.2 kB
JavaScript
const webpack = require("webpack");
const merge = require("webpack-merge");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const FriendlyErrorsPlugin = require("friendly-errors-webpack-plugin");
const { resolveCwd } = require("./lib/utils");
const config = require("./config").dev;
const baseWebpackConfig = require("./webpack.base")(config);
const hotReload = require("path").resolve(
__dirname,
"../node_modules/webpack-hot-middleware/client?reload=true&quiet=true"
);
Object.keys(baseWebpackConfig.entry).forEach(name => {
baseWebpackConfig.entry[name] = [hotReload].concat(baseWebpackConfig.entry[name]);
});
module.exports = merge(baseWebpackConfig, {
devtool: "eval-source-map",
plugins: [
new webpack.DefinePlugin({
"process.env": config.env
}),
new webpack.HotModuleReplacementPlugin(),
new webpack.NoEmitOnErrorsPlugin(),
new HtmlWebpackPlugin({
title: require(resolveCwd(".dioconfig/config")).title,
template: "template.html",
inject: true
}),
new FriendlyErrorsPlugin()
// Scope Hoisting webpack 3.4 support
// new webpack.optimize.ModuleConcatenationPlugin()
]
});