如何在 react-native 中实现 native 模块?
How to Implement native module in 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 文件我总是得到错误:
Class Class名称未导出您是否忘记使用 RTC_EXPORT_MODULE()?
即使它与 react-native 文档中示例的代码相同,谁能指导我在哪里添加 .h 和 .m 文件并正确地 link 将它们添加到项目中?
谢谢
本机模块发生了变化 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();
。很有魅力。
我正在按照本指南进行操作 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 文件我总是得到错误: Class Class名称未导出您是否忘记使用 RTC_EXPORT_MODULE()?
即使它与 react-native 文档中示例的代码相同,谁能指导我在哪里添加 .h 和 .m 文件并正确地 link 将它们添加到项目中? 谢谢
本机模块发生了变化 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();
。很有魅力。