const HtmlWebpackPlugin = require('html-webpack-plugin') class WebpackHtmlAppendPlugin { constructor (content) { this.content = content || '' } apply (compiler) { compiler.hooks.compilation.tap('WebpackHtmlAppendPlugin', (compilation) => { let beforeEmit = compilation.hooks.htmlWebpackPluginAfterHtmlProcessing if (!beforeEmit && HtmlWebpackPlugin.getHooks) { const hooks = HtmlWebpackPlugin.getHooks(compilation) if (hooks) { beforeEmit = hooks.beforeEmit } } beforeEmit && beforeEmit.tapAsync('WebpackHtmlAppendPlugin', (data, cb) => { data.html += this.content cb(null, data) }) }) } } module.exports = WebpackHtmlAppendPlugin