1234567891011121314151617181920212223242526272829303132333435363738394041 |
- const { resolve } = require("path");
- //html资源处理
- const HtmlWebpackPlugin = require('html-webpack-plugin')
- //设置node环境变量 postcss-loader会根据它读取package.js里的browserslist配置
- process.env.NODE_ENV = 'development'
- /**
- * 1、通过多入口 + optimization配置
- * 2、通过单入口 + optimization配置
- * 3、通过js代码,让某个文件被单独打包成一个chunk 示例在 ./src/js/index.js
- */
- module.exports = {
- entry: {
- // 多入口
- index: './src/js/index.js',
- test: './src/js/test.js'
- },
- output: {
- // name取文件名
- filename: 'js/[name].[contenthash:10].js',
- path: resolve(__dirname, 'build')
- },
- plugins:[
- new HtmlWebpackPlugin({
- template: './src/index.html',
- minify:{
- collapseWhitespace:true,
- removeComments:true
- }
- })
- ],
- // 可以将node_modules 中代码单独打包一个chunk最终输出
- // 自动分析多入口chunk中,是否有公共文件,公共文件会单独打包。
- optimization:{
- splitChunks:{
- chunks:'all'
- }
- },
- mode:'production'
- }
|