当前位置: 首页 > news >正文

快速开始React开发(一)

快速开始React开发(一)

React是一个JavaScript库,用于构建交互式网站,并且能够快捷创建SPA(Single Page App),其组件化的思想也是被一再传播,无论是普通的Web网站还是嵌入移动端交互都常见到其身影,那么,搞起~~

1、快速创建项目(CRA)

CRA (Create React App) 是 React 官方提供的一个脚手架工具,用于快速创建和搭建 React 项目

在此之前,我们先配置一下马上需要用到的node环境,nvm也推荐大家看一下,考虑到可能需要不同node版本管理,这里不过多介绍,提供传送门,回来时候的状态应该是nodenpm是能用的了

Node.js安装教程(2025)

(零基础)Node包管理器(nvm)安装及nodejs安装教程(2025年版)

接下来,什么都不需要做,运行这行代码就可以生成一个完整的项目

npx create-react-app my-app

这里我打算使用TypeScript作为主要的开发语言,添加--template参数指定模板

npx create-react-app my-app --template typescript

啊哦,别慌,小状况,提示需要升级了,那就妥协一下
在这里插入图片描述
升级到最新的create-react-app

npm uninstall -g create-react-app
npm install -g create-react-app@latest

好了,升到5.1.0,满足要求,Let’s try again!
在这里插入图片描述

耐心等待一小会儿,看到这个就说明项目创建成功啦,我们可以用下面红框的命令进入项目,并运行一下看看
在这里插入图片描述

此时,会需要选择一下浏览器,页面自动跳转,“小”功告成!
在这里插入图片描述

2、项目结构

使用Trae打开项目目录,肉眼可见这几项
在这里插入图片描述
我们简要看看每一项的作用:

  • node_modules/
    • 存放项目所有的依赖包
    • 通过 npm/yarn 安装的包都在这里
    • 注:不需要提交到代码仓库(运行命令就能下)
  • public/
    • 存放静态资源文件
    • 包含主页面模板 index.html
    • 存放网站图标、manifest等公共资源
  • src/
    • 项目源代码目录
    • 包含入口文件和主要组件
    • 开发主要在这个目录下进行
  • package.json:项目配置文件
  • README.md:项目说明文档
  • .gitignore:Git忽略配置
  • package-lock.json:依赖版本锁定文件
  • tsconfig.json:TypeScript 编译和类型检查的配置文件(ts项目特有)

以上大概有些印象即可,主要开发用到比较多的还是src/,这里将会不断随着业务的复杂程度扩充,之后则需要更加细致进行分类管理,比方说下面这样:

my-app/
├── src/
│   ├── api/                 # API 接口管理
│   │   ├── user.ts         # 用户相关接口
│   │   └── index.ts        # API 统一导出
│   │
│   ├── assets/             # 静态资源
│   │   ├── images/         # 图片资源
│   │   ├── styles/         # 全局样式
│   │   └── fonts/          # 字体文件
│   │
│   ├── components/         # 公共组件
│   │   ├── Button/
│   │   │   ├── index.tsx
│   │   │   └── style.module.scss
│   │   └── index.ts
│   │
│   ├── constants/          # 常量配置
│   │   ├── api.ts         # 接口地址
│   │   └── enum.ts        # 枚举值
│   │
│   ├── hooks/             # 自定义 Hooks
│   │   └── useAuth.ts
│   │
│   ├── layouts/           # 布局组件
│   │   └── MainLayout.tsx
│   │
│   ├── pages/            # 页面组件
│   │   └── Home/
│   │       ├── components/  # 页面级组件
│   │       ├── index.tsx
│   │       └── style.module.scss
│   │
│   ├── store/            # 状态管理
│   │   ├── modules/      # 模块分类
│   │   └── index.ts
│   │
│   ├── types/            # TypeScript 类型
│   │   └── user.d.ts
│   │
│   ├── utils/            # 工具函数
│   │   ├── request.ts    # 请求封装
│   │   └── storage.ts    # 存储相关
│   │
│   ├── App.tsx
│   └── index.tsx
│
├── public/              # 静态公共资源
├── tests/              # 测试文件目录
├── package.json
└── tsconfig.json

一点点开始吧。。。

http://www.lryc.cn/news/547262.html

相关文章:

  • 2025最新Transformer模型及深度学习前沿技术应用
  • 极狐GitLab 正式发布安全版本17.9.1、17.8.4、17.7.6
  • [环境搭建篇] Windows 环境下如何安装Docker工具
  • JavaScript 数组和字符串方法详解
  • 达梦数据库系列之Mysql项目迁移为达梦项目
  • 10个实用IntelliJ IDEA插件
  • 10分钟从零开始搭建机器人管理系统(飞算AI)
  • [自动驾驶-传感器融合] 多激光雷达的外参标定
  • 怎么让呼叫中心支持高并发
  • Elasticsearch简单学习
  • 就像BGP中的AS_PATH一样,无论路途多远,我愿意陪你一起走——基于华为ENSP的BGP的路由负载均衡及过滤深入浅出
  • valgrind 检测多线程 bug,检测 并发 bug concurrent bug parallel bug
  • 游戏引擎学习第135天
  • 异步操作返回原始上下文
  • 区块链中的数字签名:安全性与可信度的核心
  • vulnhub渗透日记23:bulldog
  • macOS - 使用 tmux
  • Armbian: 轻量级 ARM 设备专用 Linux 发行版全面解析
  • 微服务通信:用gRPC + Protobuf 构建高效API
  • Spring Boot 整合 JMS-ActiveMQ,并安装 ActiveMQ
  • 容器 /dev/shm 泄漏学习
  • Spring Boot 3.x 基于 Redis 实现邮箱验证码认证
  • 车载测试:智能座舱测试中多屏联动与语音交互的挑战
  • C/C++输入输出(1)
  • 前端面试场景题葵花宝典之四
  • 探索Elasticsearch:索引的CRUD
  • Java数据结构第十六期:走进二叉树的奇妙世界(五)
  • 【开源免费】基于SpringBoot+Vue.JS疫情管理系统(JAVA毕业设计)
  • 有关Java中的集合(1):List<T>和Set<T>
  • 使用 Spring Boot 实现前后端分离的海康威视 SDK 视频监控