Webpack 文档允许将带有字符串数组的对象传递给entryWebpack 配置的属性。
例如
Usage: entry: {[entryChunkName: string]: string|Array<string>}
Run Code Online (Sandbox Code Playgroud)
然而,文档没有讨论这实际上意味着什么。这是否相当于多个入口点?这会导致任何不同的行为吗?
这是它在项目serverless/aws-nodejs-typescript 中使用的示例。
可以通过 3 种方式定义入口点:
1)
entry: {
main: './src/index.js',
dashboard: './dashboard/dashboard.js'
}
Run Code Online (Sandbox Code Playgroud)
这将为对象中的每个属性创建一个文件。
2)
entry: './src/index.js'
Run Code Online (Sandbox Code Playgroud)
通常的配置,没有太大的不同。
3)
entry: ['@babel/polyfill', 'src/index.js', 'otherfile', 'other something']
Run Code Online (Sandbox Code Playgroud)
定义为对象和定义为数组的唯一区别在于,作为一个对象,webpack 创建了多个“主”包文件,这也是一种代码拆分策略。
当定义为数组时,webpack 会在所有这些文件中查找依赖项,并将它们放在同一个“入口”文件中,基本上将其归类为 1 个单个文件。
您链接的那个项目发生的情况是 1 + 3 的组合,我们可以说它是“4”。这会为每个条目创建一个对象,并且该对象上的每个条目都由一组不同的其他库组成。
| 归档时间: |
|
| 查看次数: |
1389 次 |
| 最近记录: |