zoukankan      html  css  js  c++  java
  • 写webpack插件报警告Tapable.plugin is deprecated. Use new API on .hooks instead解决方案,webpack4插件新写法

    最近写了个小插件报了个警告,然后去百度了一下,全都给我说extract-text-webpack-plugin这个插件有问题要更新,我也是无语了,这个插件我用都没用,百度翻了下齐刷刷全是这个答案,搞得我都怀疑自己然后把node_modules翻了一遍确定没有使用这个插件,后来去谷歌上搜了一下,第一条就告诉我为什么了,直白来说,webpack里的Tapable类的plugin已经废弃了,请使用hooks api来替代,那插件的代码怎么写呢

    <script>
    // 旧的使用方法
    class myPlugin {
        constructor (doneCallback, failCallback) {
          // 初始化
        }
        apply (compiler) {
            var that = this;
            compiler.plugin('compilation', function (compilation, options) {
                compilation.plugin('htmlWebpackPluginAlterAssetTags', function (
                    htmlPluginData,
                    callback,
                ) {
                    console.log('在别人的插件勾子里做些处理');
                });
            });
        }
    }
    </script>
    
    <script>
    // 新的使用方法
    class myPlugin {
        constructor (doneCallback, failCallback) {
            // 初始化
        }
        apply (compiler) {
            var that = this;
            compiler.hooks.compilation.tap('myPlugin ', compilation => {
                compilation.hooks.htmlWebpackPluginAlterAssetTags.tap('ScriptWebpackPlugin', htmlPluginData => {
                    console.log('在别人的插件勾子里做些处理');
                });
            });
        }
    }
    </script>
    

    这样子就不会报警告了,看到自己写的代码出现警告还是挺不爽的,现在的文章好多都是过时的和复制的真的误导人,webpack的插件钩子在这里https://webpack.js.org/api/compiler-hooks/#aftercompile

  • 相关阅读:
    express中 使用session与cookie
    mongoDB
    原生 js 实现 vue 的某些功能
    linux系统
    nodejs 程序(有的功能和前端js是不一样的)
    内网穿透技术
    webview
    PWA 应用
    计算机 和 互联网 知识
    css 图片 和 文本 的处理
  • 原文地址:https://www.cnblogs.com/wzcsqaws/p/13828453.html
Copyright © 2011-2022 走看看