Что такое файл chunk-vendors.js и как он создается? (Webpack) - PullRequest
3 голосов
/ 08 марта 2019

У меня был быстрый вопрос относительно файла chunk-vendors.js, который создается в процессе сборки приложения Vue Js.

Что это? Как это создано?

Причина, по которой я спрашиваю, состоит в том, чтобы лучше понять, как определенные вещи оказываются в нем. Я обнаружил, что на самом деле есть кое-что, чего я не хочу.

Спасибо!

1 Ответ

0 голосов
/ 23 мая 2019

chunk-vendors.js, как следует из его названия, является пакетом для всех модулей, которые принадлежат не вам, а другим сторонам.Они называются сторонними модулями или поставщиками модулями.

Часто это означает (только и) все модули, поступающие из каталога /node_modules вашегоproject.

В веб-пакете 3 вы должны были сделать это самостоятельно, и вам пришлось сделать небольшой пример, чтобы было как минимум 2 блока: один для вашего собственного кода и один для модулей из/node_modules каталог.

В веб-пакете 4 все довольно просто: вы используете optimization.splitChunks со значением по умолчанию options:

    module.exports = {
      //...
      optimization: {
        splitChunks: {
          chunks: 'async',
          minSize: 30000,
          maxSize: 0,
          minChunks: 1,
          maxAsyncRequests: 5,
          maxInitialRequests: 3,
          automaticNameDelimiter: '~',
          name: true,
          cacheGroups: {
            vendors: {
              test: /[\\/]node_modules[\\/]/, // this is what you are looking for
              priority: -10
            },
            default: {
              minChunks: 2,
              priority: -20,
              reuseExistingChunk: true
            }
          }
        }
      }
    };

@ vue /cli 3 использует webpack 4, он использует значения по умолчанию, если вы не измените конфигурацию webpack .

...