深入到@babel/core包中,几乎所有的. js文件都以下面一行结尾:
@babel/core
0 && 0
这样做的目的是什么?例如,参见transform-ast.js,transform-ast.ts的蒸发。
unhi4e5o1#
我看到0 && 0的东西是从版本7.18.6添加的。为指定的导出注入0 && exports.foo = 0提示,以帮助Node.js CJS-ESM互操作。只有在lazy模式下编译ESM重新导出到CJS时才需要此操作。因此,这表明添加它是为了帮助理解在lazy模式下将ECMAScript模块重新导出到CommonJS模块时可编译的Node.js CommonJS模块。
7.18.6
0 && exports.foo = 0
lazy
1条答案
按热度按时间unhi4e5o1#
我看到
0 && 0
的东西是从版本7.18.6
添加的。为指定的导出注入
0 && exports.foo = 0
提示,以帮助Node.js CJS-ESM互操作。只有在lazy
模式下编译ESM重新导出到CJS时才需要此操作。因此,这表明添加它是为了帮助理解在
lazy
模式下将ECMAScript模块重新导出到CommonJS模块时可编译的Node.js CommonJS模块。