react 和 react native 的开发过程区别

React 和 React Native 虽然都使用 React 思想和语法(函数组件、Hooks、JSX 等),但在 开发流程、渲染机制、UI 组件、样式处理、运行平台 等方面有明显差异。以下是对比总结:

 

✅ 一、开发目的和平台不同

对比项ReactReact Native
应用类型Web 应用(浏览器)移动 App(iOS / Android)
渲染目标HTML + CSS原生组件(View、Text 等)
运行环境浏览器手机系统(通过 JS Bridge)

 

✅ 二、UI 组件不同

React 使用的是 DOM 元素,React Native 使用的是原生组件:

功能React (Web)React Native (App)
容器<div><View>
文本<p> / <span><Text>
图片<img src="" /><Image source={...} />
输入框<input /> / <textarea /><TextInput />
按钮<button><TouchableOpacity> / <Pressable>
表单校验AntD、Form 表单等Formik、react-hook-form 等(配合使用)

 

✅ 三、样式写法不同

项目React(Web)React Native(App)
样式语言CSS / SASS / styled-componentsJS 对象(StyleSheet.create)
单位px、rem、% 等没有单位,默认就是 dp(设备无关像素)
支持的样式基于 CSS 全面支持(动画、伪类等)样式属性有限,不支持如 hover 等特性
响应式布局媒体查询 + vw/vh 等Flex 布局 + Dimensions 响应式方案

示例对比:

// React Web
<div className="box">Hello</div>
<style>.box { color: red; padding: 10px; }
</style>// React Native
<View style={{ color: 'red', padding: 10 }}><Text>Hello</Text>
</View>

✅ 四、开发调试方式不同

对比项ReactReact Native
启动方式npm start → 浏览器访问使用 Expo 或 RN CLI → 手机/模拟器运行
预览方式浏览器iOS / Android 真机 or 模拟器
调试方式浏览器 DevToolsChrome DevTools / React Native Debugger / Flipper
热更新HMR(浏览器自动刷新)Fast Refresh(设备自动刷新)

 

✅ 五、三方库和生态不同

内容ReactReact Native
UI 库AntD / MUI / TailwindCSS 等React Native Elements / NativeBase 等
路由React RouterReact Navigation
状态管理Redux / MobX / Zustand 等同上,但注意需适配原生组件
网络请求Axios / FetchAxios / Fetch / plus 网络状态监听库
动画库Framer Motion / GSAPReanimated / react-native-animatable

 

✅ 六、常见开发差异总结

开发项ReactReact Native
页面跳转React RouterReact Navigation
表单处理AntD Form / react-hook-formFormik / react-hook-form(自适配 RN)
文件上传<input type="file" />需使用原生模块(ImagePicker、DocumentPicker)
通知权限浏览器原生通知原生模块(如 react-native-push-notification
调用摄像头等硬件基本不涉及需使用原生模块(如 expo-camerareact-native-camera

 

✅ 七、打包发布差异

项目ReactReact Native
构建命令npm run build → 生成 dist 静态文件使用 Expo / Xcode / Android Studio 打包成 APK / IPA
部署平台阿里云、Vercel、GitHub Pages 等应用市场(App Store、Google Play)或企业内部发布

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/2701.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Pycaita二次开发基础代码解析:几何体重命名与参数提取技术

一、几何体智能重命名技术1.1 功能需求与应用场景classmethod def rename_bodies(cls):"""重命名零部件中的所有几何体"""# 主几何体名称标准化opart.main_body.name "零件几何体"i 1 # 计数器初始化for body in opart.bodies:if b…

《React Router深解:复杂路由场景下的性能优化与导航流畅性构建》

路由系统是连接用户操作与应用功能的中枢神经,而React Router作为React生态中处理路由逻辑的核心工具,其在复杂应用中的表现直接决定着用户体验的优劣。当应用规模扩张至数十甚至上百个路由,嵌套层级跨越多层,导航控制中的性能问题便会逐渐凸显——从首屏加载的延迟到路由切…

Linux进程程序替换

单进程版程序替换——最简单的程序替换程序替换&#xff08;Process Replacement&#xff09;是Linux/Unix系统中一个重要的概念&#xff0c;指的是一个正在运行的进程完全被另一个程序替换的过程。这是通过exec系列函数实现的。特点&#xff1a;1.进程不变性。替换前后进程的P…

【数据结构与算法】21.合并两个有序链表(LeetCode)

文章目录合并两个有序链表&#xff1a;高效算法解析与实现问题描述核心思路&#xff1a;双指针尾插法完整代码实现关键点解析1. 边界条件处理2. 头节点初始化3. 节点比较与插入4. 剩余节点处理常见错误与修正优化方案&#xff1a;哨兵节点算法应用场景总结总结合并两个有序链表…

gd32modbus从机移植

文章目录1. 背景2. 改写方式2.1 cursor2.2 使用方式3. 移植过程修改概述修改的文件和内容1. PRO2/Core/Inc/usart.h2. PRO2/Core/Src/usart.c3. PRO2/Drivers/BSP/STM32MB/port/portserial.c4. PRO2/Core/Src/stm32f1xx_it.c5. PRO2/Core/Src/main.c6. PRO2/Core/Src/gpio.c引脚…

PCB 控深槽如何破解 5G 基站 120℃高热魔咒?

5G 基站在高频通信下的功耗较 4G 基站提升 3-4 倍&#xff0c;射频模块、电源单元等核心部件的工作温度常突破 120℃&#xff0c;远超设备安全阈值&#xff08;≤85℃&#xff09;&#xff0c;形成制约通信稳定性的 “高热魔咒”。印制线路板&#xff08;PCB&#xff09;作为热…

Linux和shell

最快入门的方式是使用苹果系统。此外&#xff0c;累计补充学习&#xff1a;一、目录结构/bin&#xff0c;二进制文件 /boot&#xff0c;启动文件 /dev&#xff0c;设备文件 /home&#xff0c;主目录&#xff0c;一般外接包、安装包放在这里 /lib&#xff0c;库文件 /opt&#x…

Vue多请求并行处理实战指南

在 Vue 中同时发送多个请求主要通过并行处理机制实现&#xff0c;常用方法包括 Promise.all、axios.all&#xff08;基于 Axios 库&#xff09;和 async/await。以下为详细操作指南和注意事项&#xff1a; 一、使用 Promise.all 并行发送请求 Promise.all 接收一个 Promise 数组…

Redis线程模型讨论

很多人常说&#xff0c;因为 Redis 是单线程的&#xff0c;所以它的操作就快、性能就好。但其实这个表述并不完全准确&#xff0c;因为 Redis 作为一个成熟的分布式缓存框架&#xff0c;它由很多模块组成&#xff0c;如网络请求模块、数据操作模块、存储模块、索引模块、高可用…

基于Spring Boot实现中医医学处方管理实践

基于Spring Boot实现中医医学处方管理 以下是基于Spring Boot实现中医医学处方管理的相关示例和资源整理,涵盖基础架构、功能模块及实际应用案例: 基础项目结构 Spring Boot中医处方系统通常采用MVC分层设计: 实体类:定义处方、药材、患者等JPA实体 @Entity public clas…

中宇联:以“智云融合+AI”赋能全栈云MSP服务,深化阿里云生态合作

作为国内领先的全栈云MSP服务商&#xff0c;中宇联依托自主研发的“智云融合AI”服务平台&#xff0c;为企业提供涵盖云架构设计、迁移实施到云优化服务等内容的端到端解决方案&#xff0c;助力客户高效利用云端资源、实现业务创新。一、中宇联云MSP服务能力全景中宇联以混合云…

分布式微服务--万字详解 微服务的各种负载均衡全场景以注意点

前言&#xff1a;1. 使用方式分类总览序号使用形式是否基于服务名调用是否需 LoadBalanced备注1RestTemplate 自定义负载均衡❌ 否&#xff08;手动拼接URL&#xff09;❌ 否手动选择服务实例2RestTemplate Ribbon&#xff08;非服务名&#xff09;❌ 否&#xff08;手动拼接…