为什么 webpack.config.js 使用 CMJ
# 为什么 webpack.config.js 使用 CMJ
因为 webpack 进行打包的时候是运行在 nodejs, 而 nodejs 要开启模块化,需要在 package.js 文件配置 type=“module” ,但是由于开启了 ESM ,我们将失去CMJ 的支持,就找不到需要的 require 函数了。
# 常用配置
- mode:指定打包后的运行环境,测试还是生产。(命令行和配置同时存在,将以命令行为准)
- entry:默认是’src/index.js
- output:是一个对象,默认导出到 dist 目录
- name:指导出后的主文件名称默认是 main.js
- devtool:调试工具
- none 指使用 eval 的方式来暴露调试信息
- sourcemap :完整的源代码。
- eval-source-map:使用 base64 将源码嵌入进临时文件。
- entry :入口 可配置多个入口(出口需要特殊配置)配置的是 chunk
- main:‘./scr/index.js’ 默认
- app:['./src/index.js','./src/app.js'] // 会按照顺序,执行代码。
- output :出口
- path :绝对路径 通过 path 模块 path.resolve(__dirname,'xxx')
- filename: 生成文件的内容,
webpack.config.js 还支持使用函数的形式来进行配置。目的是灵活的接受命令行中的参数。