【webpack】其他概念

2022/03/08 22:50:04

占位符

string = '[id].js' function (pathData, assetInfo) => string

此选项决定了非初始(non-initial)chunk 文件的名称。有关可取的值的详细信息,请查看 output.filename 选项。

注意,这些文件名需要在运行时根据 chunk 发送的请求去生成。因此,需要在 webpack runtime 输出 bundle 值时,将 chunk id 的值对应映射到占位符(如 [name] 和 [chunkhash])。这会增加文件大小,并且在任何 chunk 的占位符值修改后,都会使 bundle 失效。

默认使用 [id].js 或从 output.filename 中推断出的值([name] 会被预先替换为 [id] 或 [id].)。

可用占位符

filename 可用变量:[name],[hash],[chunkhash] chunkFilename 可用变量:[id],[name],[hash],[chunkhash] sourceMapFilename 可用变量:[file],[id],[hash] libraryTarget 可选值:'var'(default),'this','commentjs','commentjs2','amd','umd'

魔法注释

https://webpack.docschina.org/api/module-methods/#magic-commentsopen in new window

source map

将编译后的代码映射回原始源代码

manifest

当 compiler 开始执行、解析和映射应用程序时,它会保留所有模块的详细要点。这个数据集合称为 "manifest",当完成打包并发送到浏览器时,runtime 会通过 manifest 来解析和加载模块。