diff --git a/lib/plugin.js b/lib/plugin.js index be2019ee5..a5d91a2f2 100644 --- a/lib/plugin.js +++ b/lib/plugin.js @@ -10,7 +10,14 @@ class VueLoaderPlugin { if (compiler.hooks) { // webpack 4 compiler.hooks.compilation.tap(id, compilation => { - compilation.hooks.normalModuleLoader.tap(id, loaderContext => { + let normalModuleLoader + if (Object.isFrozen(compilation.hooks)) { + // webpack 5 + normalModuleLoader = require('webpack/lib/NormalModule').getCompilationHooks(compilation).loader + } else { + normalModuleLoader = compilation.hooks.normalModuleLoader + } + normalModuleLoader.tap(id, loaderContext => { loaderContext[NS] = true }) }) diff --git a/package.json b/package.json index b983e0d9e..964510f62 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ }, "peerDependencies": { "css-loader": "*", - "webpack": "^4.1.0" + "webpack": "^4.1.0 || ^5.0.0-0" }, "dependencies": { "@vue/component-compiler-utils": "^2.4.0",