React 是当前最流行的前端框架之一,由 Facebook(Meta) 开发并开源。它采用 组件化开发 的模式,使 UI 变得更易管理和复用。
本文将带你从零开始,掌握 React 的基础知识,并构建你的第一个 React 应用!
React 是一个用于构建用户界面的 JavaScript 库,主要用于构建单页应用(SPA)。其核心特点包括:
✅ 组件化开发:将页面拆分为多个独立的组件,提升代码复用性和可维护性。
✅ 虚拟 DOM(Virtual DOM):优化 UI 渲染,提高性能。
✅ 单向数据流:确保数据在组件间的流动清晰可控。
✅ React Hooks:让函数组件也能管理状态(State)和副作用(Effect)。
React 可以通过 create-react-app
快速创建项目,或者使用 Vite 进行更轻量级的开发。
create-react-app
适合初学者,自动配置 Webpack、Babel 等工具。
安装命令(推荐使用 npx
方式):
npx create-react-app my-app
cd my-app
npm start # 启动开发服务器
npx
会自动安装 create-react-app
并创建一个完整的 React 项目。
Vite 速度更快,推荐用于新项目。
安装命令:
npm create vite@latest my-app --template react
cd my-app
npm install
npm run dev # 启动开发服务器
Vite
使用 ES 模块,提高构建速度,适合现代前端开发。
一个标准的 React 项目结构如下:
my-app/
├── node_modules/ # 依赖包
├── public/ # 静态资源
├── src/ # 主要的 React 代码
│ ├── components/ # 组件目录
│ ├── App.js # 入口组件
│ ├── main.jsx # 主入口文件(Vite)
│ ├── index.js # 主入口文件(CRA)
├── package.json # 项目信息 & 依赖管理
└── vite.config.js # Vite 配置文件(如果使用 Vite)
React 组件分为 函数组件 和 类组件,现代开发推荐使用 函数组件 + Hooks。
创建一个简单的 HelloWorld
组件
// src/components/HelloWorld.jsx
import React from "react";
const HelloWorld = () => {
return Hello, React!
;
};
export default HelloWorld;
在 App.js
中使用该组件
// src/App.js
import React from "react";
import HelloWorld from "./components/HelloWorld";
function App() {
return (
);
}
export default App;
运行项目,查看效果:
npm start # CRA 启动
npm run dev # Vite 启动
在浏览器中访问 http://localhost:3000/
或 http://localhost:5173/
,你将看到 Hello, React!
。
React 组件可以使用 State(状态) 和 Props(属性) 来管理数据。
useState
管理状态创建一个计数器组件
import React, { useState } from "react";
const Counter = () => {
const [count, setCount] = useState(0); // 声明 state
return (
计数:{count}
);
};
export default Counter;
在 App.js
中使用该组件
import Counter from "./components/Counter";
function App() {
return (
);
}
点击按钮,你会发现数字会随着点击 动态更新,这就是 useState
的作用!
Props 用于父组件向子组件传递数据。
示例:父组件向子组件传递 name
const Greeting = ({ name }) => {
return Hello, {name}!
;
};
const App = () => {
return (
);
};
效果:
Hello, Alice!
Hello, Bob!
Props 是只读的,不能在子组件内部修改。
React 通过 onChange
监听用户输入。
创建一个输入框组件
import React, { useState } from "react";
const InputForm = () => {
const [text, setText] = useState("");
return (
setText(e.target.value)} />
你输入的内容:{text}
);
};
export default InputForm;
在 App.js
中使用
import InputForm from "./components/InputForm";
function App() {
return (
);
}
输入内容,文本会实时更新。
React 不自带路由功能,需要安装 react-router-dom
进行页面跳转。
安装 react-router-dom
npm install react-router-dom
创建路由
import { BrowserRouter as Router, Route, Routes, Link } from "react-router-dom";
const Home = () => 首页
;
const About = () => 关于我们
;
const App = () => {
return (
} />
} />
);
};
export default App;
效果:
/
,显示 首页/about
,显示 关于页面恭喜你! 现在你已经掌握了 React 的基本用法,包括:
✅ 组件化开发
✅ useState
状态管理
✅ 组件通信(Props)
✅ 处理用户输入
✅ 前端路由(React Router)
你可以继续探索 React Hooks(useEffect)、Context API、Redux 状态管理 等更高级的内容!
你已经开始用 React 进行开发了吗?欢迎在评论区交流!