使用 React Native CLI 创建项目

React Native 安装的先决条件和设置

需要掌握的知识点

  • 掌握 JavaScript 基础知识
  • 掌握 React 相关基础知识
  • 掌握 TypeScript 相关基础知识

安装软件前需要首先安装Chocolatey。Chocolatey 是一种流行的 Windows 包管理器。

安装 nodejs 和 JDK

shell 复制代码
choco install -y nodejs-lts microsoft-openjdk11

安装需要的开发工具

  • VsCode
  • Android Studio(主要是用来安装虚 SDK 和安装虚拟设备)

使用Android Studio安装 SDK 和相关编译插件

  • 选择Tools -> SDK Manager进入 SDK 选择页面

  • 选择对应的 SDK 版本进行安装

  • 安装编译工具(使用react-native doctor命令后可以查看对应的版本)

创建一个新应用程序

如果您之前安装了全局 react-native-cli 包,请将其删除,因为它可能会导致意外问题:

shell 复制代码
npm uninstall -g react-native-cli @react-native-community/cli

React Native 有一个内置的命令行界面,您可以使用它来生成新项目。npx 您无需使用 Node.js 附带的全局安装任何东西即可访问它。让我们创建一个名为"AwesomeProject"的新 React Native 项目:

shell 复制代码
npx react-native@latest init myApp

运行之前首先使用npx react-native doctor命令检查相关依赖是否满足项目编译条件:

shell 复制代码
npx react-native doctor

我们使用虚拟设备来运行项目

shell 复制代码
npm run android

项目成功编译后可以看到如下的页面:

安装过程中遇到的问题

  1. 安装microsoft-openjdk11的时候安装失败

有时候microsoft-openjdk11安装包已经下载下来,只是安装的过程中由于权限或者其他问题导致安装失败。这样我们就可以具体看一下控制台打印出来的错误信息,找到microsoft-openjdk11下载的目录,进入到具体目录后进行安装。

  1. 使用react-native doctor命令后可以看到如下的错误:

    第一个问题我们可以通过npm run android命令来解决,因为使用命令后,系统会自动启动对应的 ADB 程序

第三个问题我是忽略,因为我已经安装了Android Studio,可能是环境的问题导致报错,而Android Studio只是帮我们管理对应的 ADB 和 SDK 等等一下环境,所以这里报错可以忽略

第四个问题主要是在Android SDK Build-Tools中选择安装对应的版本就可以解决

相关推荐
青青家的小灰灰1 小时前
React 反模式(Anti-Patterns)排查手册:从性能杀手到逻辑陷阱
前端·javascript·react.js
青青家的小灰灰1 小时前
告别 Prop Drilling:Context API 的陷阱、Reducer 模式与原子化状态库原理
前端·javascript·react.js
ssshooter16 小时前
看完就懂 useSyncExternalStore
前端·javascript·react.js
Live0000017 小时前
在鸿蒙中使用 Repeat 渲染嵌套列表,修改内层列表的一个元素,页面不会更新
前端·javascript·react native
青青家的小灰灰1 天前
迈向全栈新时代:SSR/SSG 原理、Next.js 架构与 React Server Components (RSC) 实战
前端·javascript·react.js
青青家的小灰灰1 天前
透视 React 内核:Diff 算法、合成事件与并发特性的深度解析
前端·javascript·react.js
小霖家的混江龙1 天前
从 0 到 1 实现一个 useState
前端·javascript·react.js
晓得迷路了1 天前
栗子前端技术周刊第 118 期 - Oxfmt Beta、Angular GitHub stars、React 基金会...
前端·javascript·react.js
AAA阿giao2 天前
从零构建一个现代登录页:深入解析 Tailwind CSS + Vite + Lucide React 的完整技术栈
前端·css·react.js
昨晚我输给了一辆AE862 天前
为什么现在不推荐使用 React.FC 了?
前端·react.js·typescript