前端web页面和RN移动端进行交互

我们在进行RN开发时,有时候需要用到外部网页在RN里面进行显示,例如我有个页面,不想用RN去画,但是想让这个页面从RN显示,这时候就要考虑web页面和RN交互了,比如我点击web网页按钮会得到一些东西,然后需要RN移动端实时读取到数据,不多说了,看下面的示例代码即可

RN端页面

js 复制代码
import React, {useEffect} from 'react';
import {StyleSheet} from 'react-native';
// yarn add react-native-webview
import {WebView} from 'react-native-webview';

export default function WebviewScreen({navigation, route}) {
  return (
      <WebView
      	style={styles.container}
        source={{uri: 'http://192.168.1.85:8080/#/BreakKcal'}} // 网页地址
        onMessage={event => {
          // 处理从WebView接收到的消息
          console.log('接受到了JS的消息:', event.nativeEvent.data);
        }}
      />
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#FFF',
  },
});

web端页面处理

js 复制代码
// 点击按钮给RN发送数据
// 下面这个方法适用于纯原生html和js,以及所有基于原生的框架vue,react,uniapp等等都适合,因为本质也是调用了window上面的方法,这个在网页上面都有这个window对象,直接用就行
const btnClick = () => {
    window.ReactNativeWebView.postMessage({name:"我叫萧寂",age:22});
};

这样,当点击按钮触发上面的方法,RN都能同步实时打印到接收的数据(也不一定是按钮点击,只要触发window上面的这个postMessage方法就是可以的)

相关推荐
酷酷的逗逗乐5 分钟前
前端转 Agent 开发 · 第三节:LangChain 提示词模板
前端
Cache技术分享6 分钟前
516. Java 方法句柄 - 转换(进阶篇·下)
前端·后端
妙码生花7 分钟前
全网 8k star 的 BuildAdmin 正式发布 Golang 版本,这次我们在CRUD赛道杀死了比赛。
前端·后端·ai编程
写代码像蔡徐抻8 分钟前
三年了,AI为何还没有抢走程序员饭碗?
前端·后端·面试
梦曦i13 分钟前
unix-router v0.1.0 首发:uni-app x 的 vue-router 风格路由库
前端·uni-app
Linsk15 分钟前
妙用:focus解决0到auto高度过渡的边界场景
前端·css
零域码客18 分钟前
一文掌握 jQuery + Flask 全栈核心知识点(前端交互 + 后端接口 + 前后端联调)
前端·python·ajax·flask·jquery·前后端联调·web全栈
এ慕ོ冬℘゜20 分钟前
html理论
前端·html
IT_陈寒24 分钟前
Java的HashMap竟然不是线程安全的,现在才知道!
前端·人工智能·后端
IT_陈寒24 分钟前
React hooks闭包陷阱让我加了一宿班
前端·人工智能·后端