2016-05-18 3 views
5

Кто-нибудь знает, как (если возможно) выполнить JS «внутри» WebView в React Native?Выполнять JavaScript внутри источника WebView

Сценарий: У меня есть эта страница удаленного входа в систему (веб-сайт), отображаемая в моем веб-браузере, и этот веб-сайт имеет последовательность событий, которая происходит в соответствии с деятельностью пользователя. Все события запускают один обратный вызов каждый, который WebView должен прослушивать (не проблема).
Внутри каждого обратного вызова есть ссылка на функцию JavaScript, которая должна быть вызвана внутри WebView (это проблема!).
Итак, из моего приложения React Native мне нужно вызвать эту функцию JavaScript, которая размещена на странице веб-сайта (источника), загруженной в мой WebView.

Что у меня есть: Я слушаю обратные вызовы с помощью onShouldStartLoadWithRequest и манипулирую с поведением WebView с этим, и он отлично работает.
Что касается выполнения JavaScript, я пробовал метод getWebViewHandle, но этого не делал, по крайней мере, не с моего места.
Я также посмотрел на injectedJavaScript, но проблема в том, что я не знаю, какой JavaScript выполнить до того, как будут выполнены обратные вызовы.

Кто-нибудь знает, как это решить?

ответ

4

Вызов методов javascript внутри веб-просмотра возможен с использованием iOS и Android. Но требуемый API для выполнения javascript в настоящее время не предоставляется response-native. Вы можете посмотреть обсуждение в this github issue.

Однако есть 3rd party module, обеспечивающий двунаправленную связь между вашим приложением и веб-просмотром. Вы можете начать использовать его после интеграции некоторого кода в свой проект.

Смежные вопросы