React组件的定义与使用

组件-函数概念

学习目标: 认识组件的概念,了解租件与页面和其他组件的关系

 1. 每一个组件和页面上每一个模块形成一一对应的关系。组件之间可以形成一个嵌套关系,可以进行数据流通

 2. 一个庞大项目由一个个组件像搭积木一样搭建起来,最终形成一个复杂的应用

 3. 组件化这种模式更加利于代码复用

 4. 组件的应用提高了可维护性

组件-函数组件

学习目标: 能够独立使用函数完成 react 组件的创建和渲染
概念:

使用 JS 的函数(或箭头函数)创建的组件,就叫做函数组件
组件的定义与渲染:

js 复制代码
// 定义函数组件
function HelloFn() {
  return <div>这是一个函数组件</div>
}

// 定义类组件
function App() {
  return (
    <div>
      {/* 渲染函数组件 */}
      <HelloFn />
      <HelloFn></HelloFn>
    </div>
  )
}

export default App
注意:

 1. 组件名首字母必须大写,react 内部会根据这个来判断是组件还是普通的 HTML 标签

 2. 函数组件必须有返回值,表示该组件的 UI 结构;如果不需要渲染任何内容,则返回 null

 3. 组件就像 HTML 标签一样可以被渲染到页面中,组件表示的是一段结构内容,对于函数组件来说,渲染的内容是函数的返回值

 4. 使用函数名称作为组件标签名称,可以成对出现也可以自闭和出现

组件-类组件

学习目标: 能够独立完成类组件的创建和渲染

使用 ES6 的 class 创建的组件,叫做类(class)组件
组件的定义与渲染:

js 复制代码
// 引入Raact核心包
import React from 'react'
// 继承写法
class HelloComponent extends React.Component {
  render() {
    return <div>this is HelloComponent</div>
  }
}
function App() {
  return (
    <div>
      <HelloComponent />
      <HelloComponent></HelloComponent>
    </div>
  )
}

export default App

约定说明:

 1. 类名称首字母必须大写

 2. 类组件应该继承 React.Component 父类,从而使用父类中提供的方法和属性

 3. 类组件必须提供 render 方法,render 方法必须有返回值,即该组件的 UI 结构

相关推荐
Aphasia3118 分钟前
https连接传输流程
前端·面试
徐小夕8 分钟前
万字长文!千万级文档 RAG 知识库系统落地实践
前端·算法·github
threelab19 分钟前
Three.js 物理模拟着色器 | 三维可视化 / AI 提示词
开发语言·前端·javascript·人工智能·3d·着色器
kyriewen29 分钟前
CSS Container Queries:彻底告别 @media 写到手软,附 5 个真实布局案例
前端·css·面试
圣殿骑士-Khtangc40 分钟前
单智能体落地实战:从 ReAct 到 Production-Ready AI Agent 全链路解析
人工智能·react.js
Patrick_Wilson2 小时前
router.replace 之后紧跟 reload,页面为什么无限刷新?
javascript·react.js·浏览器
小小小小宇2 小时前
OpenMemory MCP
前端
和平宇宙2 小时前
AI笔记005. hermes-DeepSeek V4 Pro, 128K上下文引发的探索
前端·人工智能·笔记
IT_陈寒3 小时前
Redis持久化这个坑,我爬了一整天才出来
前端·人工智能·后端
naildingding3 小时前
3-ts接口 Interface
前端·typescript