React-Native 加载 url 时如何从 WebView 获取标题

Ver*_*sus 1 webview react-native

我想在 react-native 中从 webView 获取 url 的标题。

例如:我可以从 iOS 中的 webView 获取 url 的标题

- (void)webViewDidFinishLoad:(UIWebView *)webView{
    titleLabel.text = [webView stringByEvaluatingJavaScriptFromString:@"document.title"];
?
Run Code Online (Sandbox Code Playgroud)

到目前为止我没有找到任何解决方案,所以有人有一些想法吗?

des*_*ant 5

我不确定这是否是最干净的解决方案,但您可以将一些 JavaScript 注入 WebView 以获取一些数据,然后将其传回。

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

render() {
  return (
    <WebView
      source={{ uri: "https://wonderloveapp.com" }}
      injectedJavaScript="window.postMessage(document.title)"
      onMessage={this.handleMessage}
    />
  )
}
Run Code Online (Sandbox Code Playgroud)

参考:

  • 我必须使用: `injectedJavaScript={"window.ReactNativeWebView.postMessage(myjscode)"}` (2认同)