我第一次使用Babel将Jest测试从ES6语法转换为commonJS;这可能涉及到使用@babel/plugin-transform-modules-commonjs
babel插件,我试图在我的Next.js项目中安装它。查看Babel的配置文档的这一部分,我看到术语package
经常出现。
包层次结构是巴别塔约定、节点定义的特性还是基本JavaScript本身的一部分?在这种情况下,包的定义是什么?哪里有关于它们的文档?babel-jest
是解决这个问题的一个稳定的替代方案吗?
1条答案
按热度按时间zy1mlcev1#
Babel使用一个
package.json
文件来解析模块依赖关系。一个包是一个可以使用require()
函数导入的文件集合。你可以在Node.js文档中阅读更多关于包的信息。没有标准的方法来定义一个包的层次结构,但是Babel确实有一些关于如何组织你的文件的约定。你可以在Babel文档中阅读更多关于组织你的代码的内容。Babel-jest是一个稳定的替代方案,可以将Jest测试从ES6语法转换为commonJS。它支持使用
babel-plugin-transform-modules-commonjs
将你的模块转换为commonJS。具体来说,在您提到的Babel文档的上下文中,“包”一词指的是您的应用程序本身(也被认为是一个包)以及包含在同一个存储库中的其他应用程序(如果您有一个包含许多应用程序的monorepo)。