插件

插件提供了更灵活的方式以控制 Compilation 的执行,通过注册不同的事件,我们能做到 Parser 无法完成的工作,我们在这里写一个插件,当处于调试模式时,给所有的 js 文件头部加上日期:

  1. export default function () {
  2. this.on('after-compile', function (compilation, callback) {
  3. const utils = this.getUtils()
  4. const options = this.getOptions()
  5. const config = this.getSystemConfig()
  6. const file = compilation.file
  7. if (config.ankaConfig.devMode && file.extname === '.js') {
  8. if (file.content instanceof Buffer) {
  9. file.content = file.content.toString()
  10. }
  11. file.content = `${new Date().toLocaleString()}\r\n${file.content}`
  12. }
  13. callback()
  14. }
  15. }

我们可以注册的事件见这里