如何确定已安装的Webpack版本

JavaScript Webpack

村村西里Green

2020-03-23

尤其是在从webpack v1到v2的过渡期间,以编程方式确定所安装的webpack版本非常重要,但是我似乎找不到合适的API。

第3024篇《如何确定已安装的Webpack版本》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点

4个回答
LGil 2020.03.23

webpack 4现在提供了可以使用的version属性!

泡芙 2020.03.23

另一种尚未提及的方式:

如果将其本地安装到项目中,则打开node_modules文件夹并检查您的webpack模块。

$cd /node_modules/webpack/package.json

打开package.json文件并查看版本

在此处输入图片说明

伽罗理查德 2020.03.23

对于那些正在使用 yarn

yarn list webpack 会成功的

$ yarn list webpack
yarn list v0.27.5
└─ webpack@2.6.1
Done in 1.24s.
宝儿 2020.03.23

安装版本:

使用webpack CLI(--version, -v Show version number [boolean])

webpack --version

要么:

webpack -v

使用npm list命令:

npm list webpack

结果name@version-range

<projectName>@<projectVersion> /path/to/project
└── webpack@<version-range>

使用yarn list命令:

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

The DefinePlugin allows you to create global constants which can be configured at compile time.

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

Now we can access the global constant like so:

console.log(WEBPACK_VERSION);

Latest version available:

Using npm view command will return the latest version available on the registry:

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


For webpack use:

npm view webpack version

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android