0

我正在反应本机 Web 视图下加载一个 Vue Web 应用程序。一旦我单击 Web 视图中的按钮。它需要在 react native 中被检测到。有什么可能吗?

4

1 回答 1

0

您可以使用

window.postMessage("Click in Vue");在按钮上单击Vue js以将消息表单html页面发布到react-native

window.postMessage() 方法可以安全地启用 Window 对象之间的跨域通信;例如,在页面和它生成的弹出窗口之间,或者在页面和嵌入其中的 iframe 之间。

Webview您可以像这样在组件中获取此消息:

<WebView
   onMessage={(message) => this.onMessage(message)}
/>

在该onMessage方法中,您可以获得如下数据:

onMessage(message) {
   console.log(message.nativeEvent.data);
}

更新

它似乎react-native-webview改变了它调用 postMessage 的方式,所以现在你应该这样做:window.ReactNativeWebView.postMessage("Click in Vue");

在这里阅读更多

于 2020-01-06T10:32:26.293 回答