在 babel 插件中如何知道任务已经执行完了?

我写一个 babel 插件,发现在 visitor 中只是一个文件一个文件的去执行,但是不知道整个任务什么时候执行完成了,我想找相应的钩子也没找到。请问要怎么才能知道 babel 已经执行完任务了呢?

阅读 2.7k
2 个回答

用stream去做?

来源
插件的准备和收尾工作
插件可以具有在插件之前或之后运行的函数。它们可以用于设置或清理/分析目的。

export default function({ types: t }) {
  return {
    pre(state) {
      this.cache = new Map();
    },
    visitor: {
      StringLiteral(path) {
        this.cache.set(path.node.value, 1);
      }
    },
    post(state) {
      console.log(this.cache);
    }
  };
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题