在配置中,我们指定一个条目数组,如下所示:
entry: [
'polyfills',
'./src/index.js'
]
我想知道是否可以通过CLI指定:
$ webpack [opts] <entry_array?> <output>
要明确的是,我指的是带有模块数组而不是多个条目的单个条目(我理解这是可能的)。
答案 0 :(得分:1)
您可以简单地将所有入口点作为参数传递,它们将被视为单个块,就像在配置中使用数组一样。在您的情况下,以下内容会创建bundle.js
,其中包含polyfills
和./src/index.js
:
webpack polyfills ./src/index.js bundle.js
为了清除有关多个块的任何混淆,CLI接受<name>=<entry>
形式的参数,就像在配置中使用对象一样。因此,以下内容将生成具有相应入口点的polyfills.bundle.js
和app.bundle.js
:
webpack polyfills=polyfills app=./src/index.js [name].bundle.js
注意:如果输出是一个文件,webpack会抱怨存在冲突。
有关详细信息,请查看CLI without config file的官方文档。
答案 1 :(得分:0)
@Michael,我遇到了同样的问题,将多个条目组合到一个输出文件中时遇到了错误。我在webpack-cli中仅用于锻炼。
使用第二种方法,我得到了
npx webpack index=./src/index.js app=./src/index2.js [name].bundle.js
zsh: no matches found: [name].bundle.js
选项1,是
npx webpack ./src/index.js ./src/index2.js dist/bundle.js
Hash: fe5cb8d967e4e39a16b8
Version: webpack 4.32.0
Time: 105ms
Built at: 2019-05-22 11:01:35
1 asset
Entrypoint main = main.js
[0] multi ./src/index.js ./src/index2.js dist/bundle.js 52 bytes {0} [built]
[1] ./src/index.js 27 bytes {0} [built]
[2] ./src/index2.js 27 bytes {0} [built]
...
ERROR in multi ./src/index.js ./src/index2.js dist/bundle.js
Module not found: Error: Can't resolve 'dist/bundle.js' in '/Users/.../Code/webpack-pitfalls'
@ multi ./src/index.js ./src/index2.js dist/bundle.js main[2]