跳到主要内容

React 组件基础

React 组件是构建 UI 的基本单位。你可以把一个组件理解为一个函数,它接收参数(props),然后返回一段 JSX 结构。在本章中,你将学会创建函数组件和类组件,理解 props 的作用,掌握组件组合与嵌套的用法,并写出属于你自己的组件。

什么是组件?

在 React 中,组件可以看作是一个封装了某段 UI 和逻辑的模块,它就像 HTML 中的标签,可以在 JSX 中被复用。

基本的组件有两种写法:

  • 函数组件(Function Component)✅ 推荐
  • 类组件(Class Component)⚠️ 已逐步被函数组件替代

函数组件

函数组件是目前最推荐的写法,它本质上是一个普通的 JavaScript 函数,返回一段 JSX:

function Welcome() {
return <h1>你好,React!</h1>;
}

你也可以用箭头函数写法:

const Welcome = () => <h1>你好,React!</h1>;

使用组件时,就像使用标签一样:

<Welcome />

类组件

类组件使用 ES6 的类来定义,必须继承 React.Component

import React from 'react';

class Welcome extends React.Component {
render() {
return <h1>你好,类组件!</h1>;
}
}

现在函数组件配合 Hook 更强大,类组件基本只出现在旧项目中。

组件复用与组合

你可以在一个组件中嵌套另一个组件:

function Header() {
return <h2>这是头部</h2>;
}

function Footer() {
return <p>这是底部</p>;
}

function App() {
return (
<div>
<Header />
<p>这是主体内容</p>
<Footer />
</div>
);
}

这样的嵌套组合使得页面结构清晰明了。

组件中的 props

props(属性)是组件之间通信的方式,它让父组件可以向子组件传值。

示例:

// 子组件
function Welcome(props) {
return <h1>你好,{props.name}</h1>;
}

// 父组件
function App() {
return <Welcome name="小明" />;
}

你可以把 props 看作函数的参数:

const Welcome = ({ name }) => <h1>你好,{name}</h1>;

组件必须以大写字母开头

React 使用组件名的首字母区分普通 HTML 标签与自定义组件。

// 正确
const MyComponent = () => <div>内容</div>;

// 错误(会被当作 HTML 标签解析)
const myComponent = () => <div>内容</div>;

将组件拆分成独立文件(模块化)

你可以将组件写在单独的文件中,便于维护和复用。

Welcome.jsx

Welcome.jsx
const Welcome = ({ name }) => <h1>你好,{name}</h1>;

export default Welcome;

App.jsx

App.jsx
import Welcome from './Welcome';

function App() {
return <Welcome name="React 用户" />;
}

小结

组件是 React 的核心,它们让 UI 更加模块化、可组合、易维护。你学会了创建函数组件、传递 props、组件嵌套与组合。后续我们还将深入学习组件状态(state)、生命周期(在函数组件中是 Hook)、事件处理等内容,让你的组件变得更智能、更互动。掌握组件,是你通往 React 高阶之路的第一步。

知心 MBTI 微信小程序
「知心MBTI」微信小程序,探索你的 MBTI 人格类型,发现潜能。微信扫码免费测试 🎉