【发布时间】:2018-03-11 10:07:00
【问题描述】:
我已经在 Android 平台上反应原生项目。 我有一个从 url 加载的 Webview。当用户单击任何 url 时,我想导航到我的应用程序中的屏幕,webview 将停止加载。所以在我的 onNavigationStateChange() 函数中
source = {{uri:this.props.htmlUrl}}
ref='_webView'
scrollEnabled={true}
javaScriptEnabled={true}
domStorageEnabled={true}
onNavigationStateChange ={(navState)=>{
//handle navigate another screen
this.refs._webView.stopLoading();
}}
它有效。因此,当我返回并单击其他 url 时,我无法触摸 webview 中的任何 url。 如果有人遇到同样的问题,请帮助我。提前致谢。
【问题讨论】:
-
你不需要停止加载webview,当它完成加载你所在的网页时它会停止加载。此外,onNavigationStateChange 不是停止 WebView、记录 navState 的最佳位置,您会看到它在页面完全加载完成之前被多次调用。您不想在页面上的大多数项目完全加载之前停止加载页面。如果您试图停止页面上正在运行的脚本,您应该考虑将 JavaScript 注入 WebView 以阻止脚本继续运行。
标签: javascript android reactjs react-native webview