RN,webview里onMessage属性的使用
来源:互联网 发布:绵阳涪城编程培训学校 编辑:程序博客网 时间:2024/06/05 06:33
因为RN中文网的文档实在是不够清晰(渣渣个人感觉),感觉比较难看懂,百度相关的也比较少和不清晰,查了下搞懂后记录下来,先看代码
RN端
/** * Created by yulam on 2017/3/9. */import React, {Component} from "react";import {AppRegistry, Text, View, TouchableHighlight, WebView} from "react-native";class WevViewApp extends Component { constructor( props ) { super( props ); this.webView = null; } onMessage( event ) { console.log( "On Message", event.nativeEvent.data ); } sendPostMessage() { console.log( "Sending post message,this is RN" ); this.webView.postMessage( "Post message from react native " ); } render() { return ( <View style={{flex: 1}}> <TouchableHighlight style={{padding: 10, backgroundColor: 'blue', marginTop: 20}} onPress={() => this.sendPostMessage()}> <Text style={{color: 'white'}}>Send post message from react natives</Text> </TouchableHighlight> <WebView style={{flex: 1}} source={require('../connect.html')} javaScriptEnabled={true} ref={( webView ) => this.webView = webView} //以下可以说是页面传信息过来会触发 onMessage={this.onMessage} /> </View> ); }}module.exports = WevViewApp;
<html><body><button>Send post message from web</button><div>Post message log</div><script> document.querySelector("button").onclick = function() { console.log("Send post message,this is web"); window.postMessage("Post message from web", "*"); } document.addEventListener("message", function(event) { console.log("Received post message", event); alert(event.data); }, false); function logMessage(message) { log.append((new Date())); }</script></body></html>
部署上之后,debugger模式运行,结果是如下
点击上方蓝色按钮结果如下
点击下方按钮结果
源代码是github上面的提问来的,只是我运行好像有点问题,就小修改了下
0 0
- RN,webview里onMessage属性的使用
- RN的webview使用问题记录, 待解决
- 关于RN与webview的简单通信
- RN中UIImage的使用
- RN版本UITextFeild的使用
- RN点击事件的使用
- WebView的简单使用以及属性介绍
- React Native WebView 内点击事件获取onNavigationStateChange、onMessage
- React Native WebView 内点击事件获取onNavigationStateChange、onMessage
- Android--在程序里浏览网页/Webview的使用
- 个人经常使用的RN学习地址
- RN中的navigation的使用方式 demo
- webView的自适应属性
- WebView的一些属性
- WebView的属性
- RN RefreshControl 属性
- RN布局(二)——伸缩容器的属性
- RN布局(三)——伸缩项目的属性
- HashMap的使用
- Python MySQL 实作
- crond定时任务
- 剑指Offer-重建二叉树
- python多线程
- RN,webview里onMessage属性的使用
- 华为园区交换机的选型和应用
- C++基础复习
- 圆的面积
- 设计模式——单例
- log4j报异常
- HDU 2647 Reward
- 已拒绝x11转移申请
- 同甘共苦