如何在react-native中实现本地模块?

我正在遵循本指南http://facebook.github.io/react-native/docs/nativemodulesios.html#content

也是这个网站: http : //colinramsay.co.uk/2015/03/27/react-native-simple-native-module.html

但没关系,我添加.h和.m文件,我总是得到错误:类ClassName不导出你忘了使用RTC_EXPORT_MODULE()?

即使它与react-native文档中的示例代码相同,任何人都可以引导我在何处添加.h和.m文件并将其正确链接到项目中? 谢谢。

原生模块API已经发生了变化,似乎文档没有相应更新。 从我的文章中的示例中,SomeString.m应该看起来像这样:

// SomeString.m #import "SomeString.h" @implementation SomeString RCT_EXPORT_MODULE(); RCT_EXPORT_METHOD(get:(RCTResponseSenderBlock)callback) { // Change this depending on what you want to retrieve: NSString* someString = @"something"; callback(@[someString]); } @end 

这最后得到所需的结果,你可以像以前一样从JS中调用它。 看起来这只是发生了:

https://github.com/facebook/react-native/commit/0686b0147c8c8084e4a226b7ea04585362eccea8

你也可以添加一个普通的RCT_EXPORT(); 到任何你想要导出的方法。 奇迹般有效。