1. ホーム
  2. cordova

[解決済み] DeprecationWarningです。Tapable.pluginは非推奨です。代わりに `.hooks` の新しい API を使用してください。

2022-02-07 04:54:27

質問

を実行しようとしたのですが Vuetify VueJS Cordovaの例 の後に、このエラーが発生しました。 npm run dev

<ブロッククオート

ノードビルド/dev-server.js

開発サーバを起動します... (node:1024) DeprecationWarning: Tapable.pluginは非推奨です。の新しいAPIを使用してください。 .hooks 代わりに (node:1024) DeprecationWarning。Tapable.applyは非推奨です。このため はプラグインに直接適用します。

どうすれば直るの? すでにすべてのNPMパッケージを更新しましたが、役に立ちませんでした。

解決方法は?

非推奨のメッセージが表示される。

DeprecationWarning: Tapable.applyは非推奨です。を呼び出してください。 プラグインを直接使用します。
DeprecationWarning: Tapable.pluginは非推奨です。の新しいAPIを使用してください。 .hooks 代わりに

単なる警告 :

このメッセージに遭遇した皆さんのために、簡単にまとめておきます。

このメッセージは何ですか?

webpack 4 は新しいプラグインシステムを使用しており、以前の API は非推奨となっています。2つの新しい警告があります。

DeprecationWarning: Tapable.apply is deprecated. Call apply on the plugin directly instead
DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead

これらは警告です。 これは、古いAPIを使用しているので、新しいAPIに移行するようユーザーに警告するためにコンソールに出力されます。 最新版です。

どのように 悪い これらの警告は何ですか?

これらは、あくまでテキスト情報であり、エラーではありません。 もし DeprecationWarning 無視することができます。 webpack の次のメジャーバージョンにアップデートする必要があるまで。

だから、あなたがしなければならないこと、すべきことは何もないのです。


その他、こんな感じのエラーが出てると信じます。

/tmp/my-project> npm run dev

> [email protected] dev /tmp/my-project/my-project
> node build/dev-server.js

> Starting dev server...
(node:29408) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead
(node:29408) DeprecationWarning: Tapable.apply is deprecated. Call apply on the plugin directly instead
/tmp/my-project/node_modules/html-webpack-plugin/lib/compiler.js:81
        var outputName = compilation.mainTemplate.applyPluginsWaterfall('asset-path', outputOptions.filename, {
                                                  ^

TypeError: compilation.mainTemplate.applyPluginsWaterfall is not a function
    at /tmp/my-project/node_modules/html-webpack-plugin/lib/compiler.js:81:51
    at compile (/tmp/my-project/node_modules/webpack/lib/Compiler.js:242:11)
    at hooks.afterCompile.callAsync.err (/tmp/my-project/node_modules/webpack/lib/Compiler.js:487:14)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (/tmp/my-project/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:15:1)
    at AsyncSeriesHook.lazyCompileHook [as _callAsync] (/tmp/my-project/node_modules/tapable/lib/Hook.js:35:21)
    at compilation.seal.err (/tmp/my-project/node_modules/webpack/lib/Compiler.js:484:30)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (/tmp/my-project/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:6:1)
    at AsyncSeriesHook.lazyCompileHook [as _callAsync] (/tmp/my-project/node_modules/tapable/lib/Hook.js:35:21)
    at hooks.optimizeAssets.callAsync.err (/tmp/my-project/node_modules/webpack/lib/Compilation.js:966:35)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (/tmp/my-project/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:6:1)
    at AsyncSeriesHook.lazyCompileHook [as _callAsync] (/tmp/my-project/node_modules/tapable/lib/Hook.js:35:21)
    at hooks.optimizeChunkAssets.callAsync.err (/tmp/my-project/node_modules/webpack/lib/Compilation.js:957:32)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (/tmp/my-project/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:6:1)
    at AsyncSeriesHook.lazyCompileHook [as _callAsync] (/tmp/my-project/node_modules/tapable/lib/Hook.js:35:21)
    at hooks.additionalAssets.callAsync.err (/tmp/my-project/node_modules/webpack/lib/Compilation.js:952:36)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (/tmp/my-project/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:6:1)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] dev: `node build/dev-server.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

を更新する必要があります。 html-webpack-plugin から 最新版 :

npm install --save-dev html-webpack-plugin@3

そして、エラーはなくなるはずです。