跳至主内容
版本:0.82

什么是 Codegen?

非官方测试版翻译

本页面由 PageTurner AI 翻译(测试版)。未经项目官方认可。 发现错误? 报告问题 →

Codegen 是一款避免编写大量重复代码的工具。使用 Codegen 并非强制要求:你可以手动编写所有生成的代码。但 Codegen 生成的脚手架代码能为你节省大量时间。

每次构建 iOS 或 Android 应用时,React Native 都会自动调用 Codegen。有时你可能需要手动运行 Codegen 脚本来查看实际生成的文件和类型:这在开发 Turbo Native 模块 和 Fabric Native 组件时是常见场景。

Codegen 的工作原理

Codegen 是与 React Native 应用紧密耦合的流程。Codegen 脚本位于 react-native NPM 包内,应用会在构建时调用这些脚本。

Codegen 会从你在 package.json 中指定的目录开始,扫描项目文件夹,查找包含自定义模块和组件规范(specs)的特定 JS 文件。规范文件是使用类型化方言编写的 JS 文件:React Native 目前支持 Flow 和 TypeScript。

每当 Codegen 发现规范文件,就会生成相应的样板代码。它会先生成 C++ 胶水代码,再生成平台专属代码:Android 使用 Java,iOS 使用 Objective-C++。