検索

ホームページ  >  に質問  >  本文

ios - WebViewJavascriptBridge,react 与原生客户端 webview 的交互有 demo 么?

各位大神们,react 与原生客户端 webview 的交互有 demo 么?比如我用WebViewJavascriptBridge简单实现了和 iOS 客户端的交互,但是不知道怎么和 react 整合在一起?

谢谢了~

PS:暂时使用的是 react,非 react-native。暂时针对的是 iOS 平台。

大家讲道理大家讲道理2890日前356

全員に返信(2)返信します

  • 高洛峰

    高洛峰2017-04-17 17:53:55

    WebViewJavascriptBridge とフロントエンドの間の対話を実装したので、それを通常の JS 呼び出しとして扱います。react を使用するかどうかとは関係ありません。

    ネイティブと js の間の対話は、実際にはいくつかのメソッドを公開しているだけです。ネイティブは WebViewJavascriptBridge オブジェクトで公開されていますが、js は通常 window オブジェクトで公開されています (フロントエンドとアプリの間の対話を扱っているため、ウィンドウ オブジェクト上で公開する必要はありません。オブジェクトはカスタマイズできます)。 React との統合と呼ばれるものは、ネイティブが直接、react.xxx メソッドを呼び出すことを意味しているかどうかはわかりません。

    今述べたことは、カスタム オブジェクトに公開することもできます。もちろん、反応オブジェクトを通じてネイティブに公開することもできます。ただし、これはお勧めできません。主な理由は次のとおりです。
    1. これにより、簡単に結合が発生したり、場合によっては React と競合したりする可能性があります。実際には、(必要な場合を除いて) フロントエンドでメソッドを公開することはお勧めしません。 )。フロントエンド メソッドを呼び出すネイティブの効率は非常に低いためです (特に Android は、フロントエンド メソッドを呼び出すネイティブ メソッドと比較して)。ネイティブがフロントエンド メソッドに依存しないように、コールバックを使用することをお勧めします。

    ここで話している反応は React Native ではなく React.js である必要があることに注意してください。

    返事
    0
  • 黄舟

    黄舟2017-04-17 17:53:55

    React Native によってカプセル化された WebView について話している場合、残念ながら、js との直接のやり取りはありません。iOS はジャンプ リクエストをインターセプトすることができ、Android は当面それをサポートしません。 🎜> ただし、js 対話型 Webview はサードパーティでサポートされているようです

    返事
    0
  • キャンセル返事