Javascript 如何在react原生webView和react web应用程序之间进行通信?

Javascript 如何在react原生webView和react web应用程序之间进行通信?,javascript,reactjs,react-native,react-native-webview,react-360,Javascript,Reactjs,React Native,React Native Webview,React 360,我正在尝试在react-native中的webView和使用react-360(当然还有react)创建的web应用程序之间创建通信。 我正在使用react native webview,并按照此链接中的指南创建通信: 使用页面中的示例,在脚本部分使用函数window.ReactNativeWebView.postMessage(数据)的简单html页面(如链接中的示例),效果良好: <WebView source={{uri: this.props.link}} ref=

我正在尝试在react-native中的webView和使用react-360(当然还有react)创建的web应用程序之间创建通信。 我正在使用react native webview,并按照此链接中的指南创建通信: 使用页面中的示例,在脚本部分使用函数
window.ReactNativeWebView.postMessage(数据)
的简单html页面(如链接中的示例),效果良好:

 <WebView
  source={{uri: this.props.link}}

    ref={( webView ) => this.webView = webView}

    onMessage={event => {
      alert(event.nativeEvent.data);
    }}
  />
不幸的是,当我单击按钮时,出现以下错误:
无法读取未定义的属性“postMessage”
。我如何解决这个问题?多谢大家。

您可以尝试使用文档中的超时功能吗

setTimeout(function () {
   window.ReactNativeWebView.postMessage("Hello!")
}, 2000)

我在React-360存储库中的一个旧问题中找到了问题的解决方案。React-360代码无法访问窗口,因此有必要将代码放入本机模块中,并从那里向React本机应用程序发送消息。 链接到问题:

setTimeout(function () {
   window.ReactNativeWebView.postMessage("Hello!")
}, 2000)