Android React Native Webview-未定义不是函数

Android React Native Webview-未定义不是函数,android,react-native,webview,react-navigation,expo,Android,React Native,Webview,React Navigation,Expo,你好,我希望有人能帮助我,因为我已经在互联网上搜索了一段时间,没有任何结果,我是一个初学者在反应。 目前我正在开发一个react原生应用程序 主屏幕只不过是一个显示网站的网络视图。在主屏幕上有一个按钮,可以引导我进入一些设置视图。 现在的问题是,我已经通过添加一个侦听器覆盖了Android的Backhandler,因此当单击Backbutton(硬件)时,Webview引用的goBack函数被调用,例如this.mywebview.goBack() 当我启动应用程序时,它工作正常,但当我点击设置

你好,我希望有人能帮助我,因为我已经在互联网上搜索了一段时间,没有任何结果,我是一个初学者在反应。 目前我正在开发一个react原生应用程序

主屏幕只不过是一个显示网站的网络视图。在主屏幕上有一个按钮,可以引导我进入一些设置视图。 现在的问题是,我已经通过添加一个侦听器覆盖了Android的Backhandler,因此当单击Backbutton(硬件)时,Webview引用的goBack函数被调用,例如this.mywebview.goBack()

当我启动应用程序时,它工作正常,但当我点击设置按钮进入另一个屏幕并从那里返回时,它就不再工作了。
现在,当我单击Backbutton时,将显示一条错误消息:null-undefined不是一个对象。

您需要将该JavaScript注入您的WebView

在WebView上,确保您有一个处理返回逻辑的函数

const goBack = () => {
  // Do some logic, this is on your WebView
};
然后,在React本机应用程序中,您只需使用:

_goBack = () => {
  this.webView.injectJavaScript(`
    (function() {
      goBack();
    })();
  `);
  return true;
}

请提供一些代码。我认为你会犯错误,仅仅是因为一旦你导航回来,就没有什么可返回的了。但是如果没有任何代码,任何人都无能为力。我试过了,但还是出现了那个错误。我想这是因为如果我从设置返回到Webview,以前的引用就不存在了。这有什么意义吗?