AndroidReactNative原生模块与JS模块通信的方法总结-创新互联
Android React Native原生模块与JS模块通信的方法总结
前言:
在做React Native开发的时候避免不了的需要原生模块和JS之间进行数据传递,这篇文章将向大家分享原生模块向JS传递数据的几种方式。
方式一:通过Callbacks的方式
说起Callbacks大家都不陌生,它是最常用的设计模式之一。无论是Java,Object-c,C#,还是JavaScript等都会看到Callbacks的身影。
原生模块支持Callbacks类型的参数,该Callbacks对应JS中的function。
在原生模块中:
public class RNTestModule extends ReactContextBaseJavaModule{ public RNTestModule(ReactApplicationContext reactContext) { super(reactContext); } @Override public String getName() { return "RNTest"; } @ReactMethod public void measureLayout( int tag, int ancestorTag, Callback errorCallback, Callback successCallback) { try { measureLayout(tag, ancestorTag, mMeasureBuffer); map.putDouble("relativeX",1); map.putDouble("relativeY", 1); map.putDouble("width", 2); map.putDouble("height",3); successCallback.invoke(relativeX, relativeY, width, height); } catch (IllegalViewOperationException e) { errorCallback.invoke(e.getMessage()); } }
新闻名称:AndroidReactNative原生模块与JS模块通信的方法总结-创新互联
当前URL:http://tyjierui.cn/article/dodsgp.html