React Native TurboModule无法注册,启动时报undefined is not an object

Newb.素平 阅读 301

我在按照官方文档实现一个TurboModule时遇到了问题。按照步骤创建了MyModule.java并注册到ReactPackage,但运行时却报错了:

TypeError: undefined is not an object (evaluating '_NativeModules.MyModule.multiply')

已经确认模块类名和package名称一致,甚至用Log验证过模块确实被加载了。是不是注册流程哪里漏掉了?或者需要额外配置metro的transform设置?

我来解答 赞 19 收藏
二维码
手机扫码查看
1 条解答
Designer°静怡
检查一下你的 TurboModule 的 JS 端绑定有没有漏掉 nativeModules 声明。在 index.js 或调用处加上这行:

import {TurboModuleRegistry} from 'react-native';
const NativeMyModule = TurboModuleRegistry.get('MyModule');


然后确认原生侧的 @TurboModule() 注解类名和 get 方法里传的字符串完全一致,大小写都不能错。
点赞 4
2026-02-09 04:04