Как указать несколько путей из CLI для опции devServer.contentBase в Webpack - PullRequest
0 голосов
/ 02 февраля 2019

В Webpack документация для devServer.contentBase говорит

Также возможно обслуживание из нескольких каталогов:

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' ]

Я нашелодин связанный пост , но не мог найти решение.

Также существует ли какой-либо стандартный стандарт, который определяет, как аргумент, принимающий массив значений, должен быть указан в командной строке?Если да, то, пожалуйста, дайте ссылку на это.

1 Ответ

0 голосов
/ 02 февраля 2019

Понял, глядя на следующий исходный код фрагмент

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"

Спасибона подсказку исходного кода, предоставленную Али Дусткани в его комментарии к моему исходному сообщению.

...