Подтвердить что ты не робот

Как определить установленную версию webpack

Особенно при переходе с webpack v1 на v2 было бы важно программно определить, какая версия webpack установлена, но я не могу похоже, найти соответствующий API.

4b9b3361

Ответ 1

Теперь webpack 4 предлагает свойство версии, которое можно использовать!

Ответ 2

Установленная версия:

Использование webpack CLI: (--version, -v Show version number [boolean])

webpack --version

или же:

webpack -v

Использование команды npm list:

npm list webpack

Результаты в [email protected]:

<projectName>@<projectVersion> /path/to/project
└── [email protected]<version-range>

Использование команды списка пряжи:

yarn list webpack

Как это сделать программно?

В Webpack 2 представлены типы конфигурации.

Вместо экспорта объекта конфигурации вы можете вернуть функцию, которая принимает среду как аргумент. При запуске webpack вы можете указать ключи среды сборки через --env, например --env.production или --env.platform=web.

Мы будем использовать ключ среды сборки с именем --env.version.

webpack --env.version $(webpack --version)

или же:

webpack --env.version $(webpack -v)

Для этого нам нужно будет сделать две вещи:

Измените наш файл webpack.config.js и используйте DefinePlugin.

DefinePlugin позволяет создавать глобальные константы, которые можно настроить во время компиляции.

-module.exports = {
+module.exports = function(env) {
+  return {
    plugins: [
      new webpack.DefinePlugin({
+        WEBPACK_VERSION: JSON.stringify(env.version) //<version-range>
      })
    ]
+  };
};

Теперь мы можем получить доступ к глобальной константе следующим образом:

console.log(WEBPACK_VERSION);

Доступна последняя версия:

Команда npm view вернет последнюю версию, доступную в реестре:

npm view [<@scope>/]<name>[@<version>] [<field>[.<subfield>]...]


Для использования webpack:

npm view webpack version

Ответ 3

Для тех, кто использует yarn

yarn list webpack выполнит трюк

$ yarn list webpack
yarn list v0.27.5
└─ [email protected]
Done in 1.24s.

Ответ 4

При использовании Angular CLI v7+ версия webpack печатается на выходе ng version:

-> ng version

     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _' | | | | |/ _' | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/


Angular CLI: 7.0.6
Node: 11.0.0
OS: darwin x64
Angular: 7.1.0
... animations, cdk, common, compiler, compiler-cli, core, forms
... http, language-service, material, platform-browser
... platform-browser-dynamic, router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.10.6
@angular-devkit/build-angular     0.10.6
@angular-devkit/build-optimizer   0.10.6
@angular-devkit/build-webpack     0.10.6
@angular-devkit/core              7.0.6
@angular-devkit/schematics        7.0.6
@angular/cli                      7.0.6
@ngtools/webpack                  7.0.6
@schematics/angular               7.0.6
@schematics/update                0.10.6
rxjs                              6.3.3
typescript                        3.1.6
webpack                           4.19.1

Ответ 5

Просто еще один способ, еще не упомянутый:

Если вы установили его локально в проект, откройте папку node_modules и проверьте ваш модуль webpack.

$cd/node_modules/webpack/package.json

Откройте файл package.json и посмотрите версию

enter image description here