Как передать параметры из response-native-webview в javascript?

Попытка отправить параметры из act-native-WebView в функцию javascript.

попробовал injectedjs, который не работал

Должен быть в состоянии передать параметры из веб-просмотра в функцию javascript.

1 ответ

Решение

Вы можете использовать injectedJavaScript в Webview

Это опора React-Native-WebView,

использование

const message = "webview"
let jsCode = `jsfunc(message);`;
<WebView
          source={{ uri: "www.example.com" }}
          style={{ flex: 1 }}
          ref={webview => {this.myWebview = webview;}} 
          injectedJavaScript={jsCode}
          javaScriptEnabled={true}
        />

Если вы хотите отправить данные на домашнюю страницу, вы можете использовать пост-сообщение.

использование

 // receive message from homepage
 onMessage( event ) {
        console.log( event.nativeEvent.data );
    }

    // send message
    sendPostMessage() {
        console.log( "Sending post message" );
        this.myWebview.postMessage( "Post message" );
    }
...
   <TouchableHighlight onPress={() => this.sendPostMessage()}>
                    <Text>Send post message</Text>
                </TouchableHighlight>
                <WebView
                    style={{flex: 1}}
                    source={{ uri:"www.example.com" }}
                    ref={( webView ) => this.myWebview = webView}
                    onMessage={this.onMessage}
                />
Другие вопросы по тегам