如何从CLI中为Webpack的devServer.contentBase选项指定多个路径

时间:2019-02-02 09:53:39

标签: webpack webpack-dev-server

devServer.contentBase的Webpack documentation

  

还可以从多个目录提供服务:

webpack.config.js

module.exports = {
  //...
  devServer: {
    contentBase: [path.join(__dirname, 'public'), path.join(__dirname, 'assets')]
  }
};

通过CLI使用

webpack-dev-server --content-base /path/to/content/dir

我不知道如何通过CLI传递多个路径。

在我的 package.json

"scripts": {
    "build": "webpack",
    "start:dev": "webpack-dev-server --content-base dist"

  },

我尝试为start:dev命令传递以下值,但没有一个起作用。

webpack-dev-server --content-base dist src/css
webpack-dev-server --content-base dist, src/css
webpack-dev-server --content-base 'dist src/css'
webpack-dev-server --content-base 'dist', 'src/css'
webpack-dev-server --content-base [ 'dist', 'src/css' ]

我找到了一个相关的post,但找不到解决方案。

还遵循什么标准,该标准指定应如何在命令行上指定接受值数组的参数?如果是,请提供参考。

1 个答案:

答案 0 :(得分:0)

通过查看下面的source code代码段来了解它

if (Array.isArray(options.contentBase)) {
   options.contentBase = options.contentBase.map((p) => path.resolve(p));
 }

我们需要以以下方式传递多个--content-base参数

"webpack-dev-server --content-base dist --content-base src/css"

感谢 Ali Doustkani 在对我的原始帖子的评论中提供的源代码提示。