特に webpack v1 から v2 への移行中は、インストールされているwebpack のバージョンをプログラムで判断することが重要ですが、適切な API が見つからないようです。
7 に答える
インストールされているバージョン:
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 ではConfiguration Typesが導入されました。
構成オブジェクトをエクスポートする代わりに、引数として環境を受け入れる関数を返すことができます。webpack を実行するとき、 または
--env
などの を介してビルド環境キーを指定できます。--env.production
--env.platform=web
というビルド環境キーを使用します--env.version
。
webpack --env.version $(webpack --version)
また:
webpack --env.version $(webpack -v)
これを機能させるには、次の 2 つのことを行う必要があります。
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
ご利用中の方へyarn
yarn list webpack
トリックを行います
$ yarn list webpack
yarn list v0.27.5
└─ webpack@2.6.1
Done in 1.24s.