React Native Webview - undefined不是一个函数

问题描述 投票:0回答:1

您好,我希望有人可以帮助我,因为我一直在互联网上搜索一段时间没有任何结果,我是一个反应初学者。目前我正在开发一个本地应用程序。

主屏幕只不过是一个显示网站的Webview。在主屏幕上有一个按钮,可以将我引导到某些设置视图中。现在的问题是,我通过添加一个监听器来覆盖Android的Backhandler,这样当单击Backbutton(硬件)时,Webview参考的goBack函数被调用,例如, this.mywebview.goBack()。

当我启动应用程序时,这工作正常,但是当我通过单击“设置”按钮进入另一个屏幕并从那里导航回来时,它不再起作用。现在,当我单击Backbutton时,将显示错误消息:null - undefined不是对象。

android react-native webview react-navigation expo
1个回答
0
投票

您需要将JavaScript注入WebView。

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

const goBack = () => {
  // Do some logic, this is on your WebView
};

然后在你的React Native应用程序中,你可以简单地使用:

_goBack = () => {
  this.webView.injectJavaScript(`
    (function() {
      goBack();
    })();
  `);
  return true;
}
© www.soinside.com 2019 - 2024. All rights reserved.