内容简介:React native 调用原生接口实现起来比较简单,自定义接口类PushManager,需要实现RCTBridgeModule协议,导入RCT_EXPORT_MODULE宏定义.React native导入本地原生模块:调用原生模块方法:
React native 调用原生接口实现起来比较简单,自定义接口类PushManager,需要实现RCTBridgeModule协议,导入RCT_EXPORT_MODULE宏定义.
#import
#import
#import
@interface PushManager : NSObject<RCTBridgeModule>
@end
#import "PushManager.h"
@implementation PushManager
RCT_EXPORT_MODULE();
- (NSDictionary *)baseInfomation {
return @{ @"name": @"FlyElephant" };
}
RCT_EXPORT_METHOD(showMessage:(NSString *)message type:(NSString *)type)
{
RCTLogInfo(@"FlyElephant 本地调用 %@---%@---", message, type);
}
@end
React native导入本地原生模块:
import {
Text,
View,
TouchableHighlight,
NativeModules,
NativeEventEmitter,
} from 'react-native';
const PushManager = NativeModules.PushManager;
调用原生模块方法:
PushManager.showMessage("消息推送","local");
原生模块还支持回调函数的调用,iOS提供回调方法:
RCT_EXPORT_METHOD(blockCallbackEvent:(RCTResponseSenderBlock)callback)
{
NSArray *events=@[@"Callback ", @"Block ", @"FlyElephant"];
callback(@[[NSNull null],events]);
}
JavaScript回调处理:
PushManager.blockCallbackEvent((error, events) => {
if (error) {
console.error(error);
} else {
console.log("回调结果:" + events);
}
});
作者:FlyElephant
链接:https://www.jianshu.com/p/455e0b32623e
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First Java(第二版·中文版)
Kathy Sierra,Bert Bates 著、杨尊一 编译 张然等 改编 / 杨尊一 / 中国电力出版社 / 2007-2 / 79.00元
《Head First Java》是本完整的面向对象(object-oriented,OO)程序设计和Java的学习指导。此书是根据学习理论所设计的,让你可以从学习程序语言的基础开始一直到包括线程、网络与分布式程序等项目。最重要的,你会学会如何像个面向对象开发者一样去思考。 而且不只是读死书,你还会玩游戏、拼图、解谜题以及以意想不到的方式与Java交互。在这些活动中,你会写出一堆真正的Jav......一起来看看 《Head First Java(第二版·中文版)》 这本书的介绍吧!