ios - WebViewJavascriptBridge,react 与原生客户端 webview 的交互有 demo 么?
大家讲道理
大家讲道理 2017-04-17 17:51:55
0
2
352

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

谢谢了~

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

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(2)
小葫芦

Maintenant que vous avez implémenté l'interaction entre WebViewJavascriptBridge et le front-end, traitez-la simplement comme un appel js ordinaire. Cela n'a rien à voir avec le fait que vous utilisiez React ou non.

L'interaction entre native et js expose en fait simplement certaines méthodes. Native est exposé sur l'objet WebViewJavascriptBridge, tandis que js est généralement exposé sur l'objet window (car j'ai traité de l'interaction entre le front-end et l'application, je l'ai fait). sachez qu'il n'est pas nécessaire qu'il soit exposé sur l'objet fenêtre, vous pouvez personnaliser un objet). Ce que vous appelez l'intégration avec React, je ne sais pas si vous voulez dire, Native appelle directement la méthode React.xxx.

Ce que je viens de dire peut être exposé à des objets personnalisés. Bien sûr, il peut également être exposé à des objets natifs via React. Cependant, cela n'est pas recommandé. Il y a principalement les raisons suivantes :
1. Cela peut facilement provoquer un couplage ou même un conflit avec React.
2 En fait, je ne recommande même pas d'exposer directement les méthodes sur le front-end (sauf si cela est nécessaire). ). Parce que l'efficacité des méthodes frontales d'appel natives est très faible (en particulier Android, par rapport aux méthodes natives d'appel frontales). Je recommande d'utiliser des rappels afin que le natif ne s'appuie pas sur des méthodes frontales.

Il convient de noter que le réactif dont vous parlez ici devrait être React.js, et non React Native.

黄舟

Si vous parlez de la vue Web encapsulée par React Native, il n'y a malheureusement pas d'interaction directe avec js. Vous ne pouvez utiliser que le hachage d'URL. iOS peut intercepter la demande de saut et Android ne le prend pas en charge pour le moment. 🎜> Cependant, il semble qu'il existe un support tiers pour la vue Web interactive js
.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal