Javascript 如何调用React本机函数并使用返回值
我想调用React原生Javascript函数,并将一些值返回到原生java代码。到目前为止,这似乎只能通过事件来实现。然而,我还没有弄清楚如何从React本机事件返回一个值并在Java中接收它 如何从Java调用React本机Javascript函数并获取其返回值 根据文档,以下是如何侦听事件:Javascript 如何调用React本机函数并使用返回值,javascript,java,react-native,Javascript,Java,React Native,我想调用React原生Javascript函数,并将一些值返回到原生java代码。到目前为止,这似乎只能通过事件来实现。然而,我还没有弄清楚如何从React本机事件返回一个值并在Java中接收它 如何从Java调用React本机Javascript函数并获取其返回值 根据文档,以下是如何侦听事件: import { NativeEventEmitter, NativeModules } from 'react-native'; ... componentDidMount() { .
import { NativeEventEmitter, NativeModules } from 'react-native';
...
componentDidMount() {
...
const eventEmitter = new NativeEventEmitter(NativeModules.ToastExample);
eventEmitter.addListener('EventReminder', (event) => {
console.log(event.eventProperty) // "someValue"
}
...
}
然后用Java调用它们:
import com.facebook.react.modules.core.DeviceEventManagerModule;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.bridge.Arguments;
...
private void sendEvent(ReactContext reactContext,
String eventName,
@Nullable WritableMap params) {
reactContext
.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
.emit(eventName, params);
}
...
WritableMap params = Arguments.createMap();
params.putString("eventProperty", "someValue");
...
sendEvent(reactContext, "EventReminder", params);
提前谢谢大家