I've got an internal application that's built using webpack that gets deployed frequently. In order to make bug reporting easier, I want to include an environment variable of the build hash [hash]
that webpack adds to bundle names. This would let me quickly determine if the user is on the latest release.
Using the DefinePlugin
, the following does not interpolate the string and instead just stores a literal [hash]
string.
new webpack.DefinePlugin({
'process.env': {
'HASH': JSON.stringify('[hash]')
}
})
Is there any way to access the hash directly as a variable or is there a specific way to make it interpolate?
https://github.com/webpack/docs/wiki/list-of-plugins#extendedapiplugin
ExtendedAPIPlugin
new webpack.ExtendedAPIPlugin()
Adds useful free vars to the bundle.
__webpack_hash__
The hash of the compilation available as free var.
This can't be used in the DefinePlugin()
but it creates a global __webpack_hash__
variable that can be accessed from anywhere inside your bundle.
var hash = __webpack_hash__;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With