1

尝试将参数从 react-native-WebView 发送到 javascript 函数。

尝试了injectedjs,它不起作用

应该能够将参数从 webview 传递给 javascript 函数。

4

1 回答 1

0

您可以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}
        />

如果要将数据发送到主页,可以使用 post-message。

用法

 // 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}
                />
于 2019-08-21T13:20:59.993 回答