前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >react native基本使用

react native基本使用

作者头像
sofu456
发布2022-05-06 15:28:10
2.5K0
发布2022-05-06 15:28:10
举报
文章被收录于专栏:sofu456

创建项目

  • npm install -g yarn react-native-cli
  • 安装android sdk
  • 配置android_home
  • 添加platform-tools目录到path
  • 创建项目react-native init 项目名称

项目初始化失败,配置如下 npm config set registry https://registry.npm.taobao.org npm config set disturl https://npm.taobao.org/dist

编译

react-native start运行 添加VScode调试配置后(配置使用react native调试)

在这里插入图片描述
在这里插入图片描述

yarn 安装包(npm会有些问题)

  • rn 的android添加local.properties内容如下,指定android sdk存放位置

sdk.dir=D:/ProgramFiles/Android/Android_SDK

调试是出错误提示,可以检查任务管理器,关闭所有执行中的node.exe程序,node端口占用可能导致调试连接失败,也可以关闭react native包生成工具,node程序大概是用作生成包的

在这里插入图片描述
在这里插入图片描述

adb连接

adb devices显示正常

在这里插入图片描述
在这里插入图片描述

react-devtools调试ui

访问地址(先启动调试,否则vscode提示已经建立调试连接错误),浏览器devtool可以查看变量: http://localhost:8081/debugger-ui/

npm install -g react-devtools下载rn独立的devtools程序,调试react native界面

运行react-devtools,启动界面如下

在这里插入图片描述
在这里插入图片描述

adb reverse tcp:8097 tcp:8097 浏览器中点击reload按钮连接

apk程序,设置toggle inspector后,选中控件,可以高亮react-devtools中的模块

修改源码

node_modules/react-native目录下面 ReactAndroid/src/main/java/com/facebook/react/views/modal/可以修改编译的目标控件

react native布局尺寸

react view设置flex占满剩余空间,view设置style大小才管用(其他空间,设置style好像不行,比较坑)

react安装unimodules

https://docs.expo.io/bare/installing-unimodules/

混合模式

与原生的java代码混合

添加第三方模块

react-native link @react-native-community/art 命令修改android/settings.gradle和android/app/build.gradle文件

自定义原生控件

错误

  • Command failed: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081

cd project/android gradlew clean 删除android/app/build重新编译 app:processDebugResources FAILED错误:升级gradle,检查后台是否运行多个java

  • React Native编译错误 Cannot find module @babel/core解决方案 删除node_modules后重新安装,关闭所有node.exe程序,
  • vscode调试打包错误,手动点击vscode下面的停止包生成工具按钮,重新启动打包

原理

Gradle构建项目、依赖android sdk或者ios

autolink功能

修改下面三个文件

  • settings.gradle
  • app/build.gradle
在这里插入图片描述
在这里插入图片描述

注意检查android/app/build.gradle的android版本

在这里插入图片描述
在这里插入图片描述
  • MainApplication.java

react web

npm install react-web-cli -g react-web init 文件夹 https://www.jianshu.com/p/917c35c0b0b4

https://zhuanlan.zhihu.com/p/90181422

react native for windows

npx react-native-windows-init --overwrite(修改npm config的配置路径,如果npx路径包含空格) https://microsoft.github.io/react-native-windows/docs/getting-started

参考:https://reactnative.cn/docs/0.44/android-building-from-source.html

react native 错误

TypeError: Super expression must either Invariant Violation: Module AppRegistry is not a registered callable module (calling runApplication)

自定义组件,是否导出模块或者导入模块是否存在 React native断开连接后重连,成功加载后才能有界面上的错误提示,否则只能在vscode中看到错误,app中没有call stack显示)

另一个调试工具占用,vscode调试退出

先启动vscode调试,再打开http://localhost:8081/debugger-ui/(占用调试资源)

Starting a Gradle Daemon, 6 busy Daemons could not be reused

android 目录中gradlew.bat --stop关闭gradle,重启电脑都会有记录,只能执行命令

打包发布

android目录下,gradlew assembleRelease

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-12-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 创建项目
  • 编译
  • adb连接
  • react-devtools调试ui
  • 修改源码
  • react native布局尺寸
  • react安装unimodules
  • 混合模式
  • 添加第三方模块
  • 自定义原生控件
  • 错误
  • 原理
  • autolink功能
  • react web
  • react native for windows
  • react native 错误
  • 打包发布
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档