zoro-cli
Version:
https://github.com/vuejs/vue-cli
40 lines (33 loc) • 1.15 kB
JavaScript
module.exports = ({ api, options, envUtil, args }) => {
api.chainWebpack(webpackConfig => {
if (envUtil.isDevelopment()) {
webpackConfig.mode('development')
if (args.nodevtool || !options.devtool) {
webpackConfig.devtool(false)
} else {
let { devtool } = options
devtool =
typeof devtool === 'string' ? devtool : 'cheap-module-eval-source-map'
webpackConfig.devtool(devtool)
}
webpackConfig.output.publicPath('/').pathinfo(true)
if (args.nohmr) {
// no hmr when see
} else {
webpackConfig
.plugin('hmr')
.use(require('webpack/lib/HotModuleReplacementPlugin'))
}
// webpack Enables NamedChunksPlugin and NamedModulesPlugin when mode === 'development'.
webpackConfig
.plugin('no-emit-on-errors')
.use(require('webpack/lib/NoEmitOnErrorsPlugin'))
// allow disable serve progress via devServer.progress
if (options.devServer.progress !== false) {
webpackConfig
.plugin('progress')
.use(require('webpack/lib/ProgressPlugin'))
}
}
})
}