我正在尝试为 webpack 构建一个插件,该插件遍历每个文件,分析是否t
正在使用函数(用于翻译)然后获取第一个参数(应该是字符串)并将其和所有发现写入 json数组(与构建同时)。
我已经设法基于 resolverFactory 创建了一个“虚拟”依赖项,尽管我很确定以后需要更多的工作,但我陷入了一个永远不会被调用的钩子中。
compiler.hooks.normalModuleFactory.tap('TranslationsPlugin', (factory) => {
factory.hooks.parser.for('javascript/auto').tap('TranslationsPlugin', (parser) => {
debugger;
parser.hooks.callAnyMember.for(functionName).tap('TranslationsPlugin', (expr) => {
debugger;
第一个debugger
被调用,我检查并且functionName
是“t”,但第二个调试器永远不会被调用。
我的猜测是,可能是 webpack 在 babel 转译之后执行此操作,并且该函数的调用方式不同。但是,在那种情况下,我不知道该怎么办。
而且,我几乎找不到很好的文档。任何帮助是极大的赞赏!