React学习指南

一学解千愁 2026-07-12 16:45 1


闲来无事, 学习一下React, 现在从零开始学起, 然后做个项目


1. 安装




  • 使用vite创建reactd ts项目 vite: https://vitejs.cn/guide/

    pnpm create vite




  • 项目说明




my-app/
├── node_modules/ # 项目依赖的第三方库
├── public/ # 静态资源文件夹
│ └── ... # 应用的静态资源(如图片、字体等)
├── src/ # 项目源代码
│ ├── assets # 项目静态资源
│ ├── App.tsx # 主组件
│ ├── App.css # 主组件的样式
│ ├── main.tsx # 项目入口文件
│ ├── index.css # 全局样式
│ └── ... # 其他组件和资源
├── package.json # 项目配置和依赖管理
├── pnpm-lock.yaml # 依赖的精确版本锁定文件
├── .gitignore # git忽略文件
├── index.html # HTML 入口,包含 #root 挂载点
├── eslint.config.js # ESLint 代码检查规则
├── tsconfig.app.json # TypeScript 编译配置: 前端代码配置,编译 src/ 下的代码
├── tsconfig.json # TypeScript 编译配置: 入口配置, 定义 references 引用另外两个
├── tsconfig.node.json # TypeScript 编译配置: 构建工具配置,只编译 vite.config.ts
├── vite.config.ts # Vite 构建配置,启用了 React 插件和 React Compiler
└── README.md # 项目说明文档



  • 创建一个demo


// APP.tsx 文件
import { useState } from 'react'
function App() {
const [count, setCount] = useState(0)

return (
<div className='app'>
首页
<div className='counter'>{count}</div>
<button onClick={() => setCount(count + 1)}>+</button>
<button onClick={() => setCount(count - 1)}>-</button>
</div>
)
}

export default App

2. jsx


JSX(JavaScript XML)是看起来像 XML 的 JavaScript 语法扩展,React 中常用它替代常规 JavaScript 来编写 UI 组件,让你能用类 HTML 的方式描述组件结构与行为。




  1. 放在return()的括号中




  2. class使用className代替




  3. 必须是闭合标签,例如




  4. 内部使用{ }放变量




  5. 注释: {/* 注释内容 */}。 可用注释快捷键




3. 组件


3.1类组件


import React from 'react'
class Cap extends React.Component {
render() {
return <div className='capp'>类组件</div>
}
}

3.2函数组件


import { useState } from 'react'
function App() {
const [count, setCount] = useState(0)
return (
<div className='app'>
<div className='counter'>{count}</div>
<button onClick={() => setCount(count + 1)}>+</button>
<button onClick={() => setCount(count - 1)}>-</button>
</div>
)
}

3.3组件生命周期


组件的生命周期(仅类组件有生命周期)可分成三个状态:




  • Mounting(挂载):已插入真实 DOM




  • Updating(更新):正在被重新渲染




  • Unmounting(卸载):已移出真实 DOM






  1. 挂载阶段




    • constructor(): 在 React 组件挂载之前,会调用它的构造函数。




    • render(): render() 方法是 class 组件中唯一必须实现的方法。




    • componentDidMount(): 在组件挂载后(插入 DOM 树中)立即调用。






  2. 更新阶段



    • componentDidUpdate(): 在更新后会被立即调用。




  3. 卸载阶段



    • componentWillUnmount(): 在组件卸载及销毁之前直接调用。



最新回复 (13)
  • linker99 07-13 11:27
    2

    我也在学这个,我以前是java开发,现在找不到工作。你是做什么的?

  • xuanxuan 07-13 11:47
    3

    我最近在从 0 学习 flutter,颇有感触哈哈哈




    重在坚持

  • xuanxuan 07-13 11:50
    4

    新佬吗,你得需要一份 l 站指南,点击我头像领取。




    第一件事注册 ldc



    第二件事信任等级了解

    浏览器先下载油猴插件再安装脚本

    1级用户查看信任等级脚本

    2 级用户查看信任等级

  • 一学解千愁 楼主 07-13 15:41
    5

    (帖子已被作者删除)

  • 一学解千愁 楼主 07-13 15:42
    6

    哈哈哈, 加油, 步入全栈大军的行列

  • admini 07-13 15:43
    7

    现在都 vp 走起了。哈哈,前端太快了。

  • 猫南北 07-14 10:57
    8

    @jesonz 文档共建 不是这么用的 你要把主要内容放在主贴, 而且这个版块的主题帖是无时间限制编辑的


    精华内容要放在主贴

  • 于小盼 07-14 10:59
    9

    现在不都是 codex / claude


    我要做个项目 框架是react…


    虽然我也是个前端 但是我也这么做

  • 一学解千愁 楼主 07-15 10:05
    10

    哦哦哦, 好的好的, 原来如此呀

  • holwell 07-15 10:09
    11

    有五年前 ai 还没发展时的淳朴美 ^-^ 回不去了

  • 一学解千愁 楼主 07-15 10:11
    12

    主要是ai写的一点都看不懂, 空中楼阁的感觉

  • yzl 07-15 10:21
    13

    不用学了,装俩 skill,其他时候提需求,让他注意组件拆分、文件夹命名就好了。


  • 志强 07-15 19:42
    14

    自从学会了vibe coding之后,啥都会了,没有不会的

* 帖子来源Linux.do
返回