webpack set hash в publicPath вызывает ошибку при включении chunkhash в имя файла? - PullRequest
0 голосов
/ 22 октября 2018

Когда пакет упакует проект, мне нужно загрузить файл dist в cdn, а затем улучшить скорость посещения.

Мне нужно сохранить пакет before в cdn, поэтому я использую хеш сборки для уникальности

Но я обнаружил, что [hash] в publicPath вызывает ошибку, когда chunkhash в filename?

Я знаю, что удаление chunkhash в filename может разрешитьвопрос, но я все еще хочу знать, почему?

Вот моя крошечная конфигурация веб-пакета:

const path = require("path");

module.exports = {
  entry: "./src/index.js",
  output: {
    path: path.resolve(__dirname, "./dist"),
    filename: "[chunkhash].js",
    publicPath: "https://my.cdn/[hash]/"
  }
};

Информация об ошибке:

ОШИБКА в главном чанке [entry] [chunkhash] .js Невозможно использовать [chunkhash] или [contenthash] для чанка в '[chunkhash] .js' (используйте вместо этого [hash])

1 Ответ

0 голосов
/ 22 октября 2018

Вы неправильно поняли концепцию publicPath.Публичный путь - это то, где из корневого каталога локального домена, в котором находятся файлы, веб-пакет должен запросить другие необходимые куски.Например, если это /, webpack будет запрашивать ${CURRENT_DOMAIN}/dj834j9384j123.js.Поэтому publicPath должен быть своего рода путем.

А также, если вы используете webpack-dev-server или аналогичный, chunkhash не должен использоваться, только хеш.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...