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

[react] class Component and function Component

我对react的用法理解还一直停留在多年以前,说明这段时间我没有更新react的知识。我大脑中记得还是使用Class Component + this.setState,可是今天看了看react的文档,发现怎么不一样了,用的都是function + useState的方式了。你知道这种感觉吗?有点类似于闭关几年,出来以后发现怎么人人都用不带实体键盘的智能手机了,之前人们不都是在用带着按键的手机吗?
这个是幸运呢?还是不幸呢?幸运的是,说明在变化,在进步,不幸的是你要接受这种改变,现在的我还能够接受改变,不知道十年,二十年,三十年之后的我能够跟得上变化。

不过要注意的是class Component + this.setState这种方式还是支持的,只不过更推荐用 Function Component + Hooks这种写法了。

假如说有一个程序员,是死记硬背型程序员A,A记住了react的使用方式就是class Component + this.setSate类型的,那么放到今天,如果A不更新知识结构,那么A已经过时了。
假如说有一个程序员B,B能够理解逻辑,能够更新知识结构,首先B会及时跟进官方和社区动态,其次B能够理解逻辑,很容易在class Component和Fucntion Compoent之前进行迁移。

useEffect Hook (替代生命周期方法)

How To Convert React Class Components to Functional Components with React Hooks

import { useState, useEffect } from “react”;

useState和useEffect怎么用?

我感觉useState比useEffect好理解。State这个单词我们知道,是状态的意思,但是Effect这个单词我不理解是啥意思。

useState (声明式 - Declarative):它的思维模式是 “我想要什么”。
你直接声明:“这个组件需要一个状态 count,它的初始值是 0”。

你通过 setCount(1) 声明:“我希望状态下次变成 1”。

React 负责如何去更新 DOM 以匹配你这个“愿望”。你不需要关心过程,只关心结果。这非常符合 React 本身的声明式哲学。

useEffect (命令式 - Imperative):它的思维模式是 “在某个时候,我要去做某件事”。


基础不牢,地动山摇,基础的css页面布局排版你还不熟练,即使切换到react也是不熟练的啊。虽然可以利用AI,可以利用成熟的组件库,但是总会涉及到需要你自己调整的地方。

http://www.xdnf.cn/news/1343647.html

相关文章:

  • vsCode或Cursor 使用remote-ssh插件链接远程终端
  • 用户登录Token缓存Redis实践:提升SpringBoot应用性能
  • yggjs_rlayout使用教程 v0.1.0
  • unistd.h 常用函数速查表
  • 【Linux仓库】进程的“夺舍”与“飞升”:exec 驱动的应用现代化部署流水线
  • Elasticsearch倒排索引和排序
  • Elasticsearch核心概念
  • 【机器学习深度学习】大模型分布式推理概述:从显存困境到高并发挑战的解决方案
  • 用sftp协议实现对文件的上传下载
  • 高压、高功率时代,飞机电气系统如何保障安全?
  • PDF文档安全升级:三招实现文本转曲线(防篡改+高清输出)
  • 一分钟docker部署onlyoffice 在线预览word pdf excel...
  • 嵌入式第三十五天(网络编程)
  • week3-[二维数组]最大列
  • WindowsAPI|每天了解几个winAPI接口之网络配置相关文档Iphlpapi.h详细分析9
  • Windows应急响应一般思路(二)
  • 【基础算法】离散化
  • 驱动(二)uboot编译+内核编译+文件系统
  • AI 绘画争议背后:版权归属、艺术原创性与技术美学的三方博弈
  • 排序---插入排序
  • Oracle APEX 经典报表中的Checkbox
  • 使用EasyExcel自定义导出表格
  • 开发二手车小程序时,如何确保信息的真实性和可靠性?
  • C#:窗体间传值
  • 计数组合学7.20(平面分拆与RSK算法)
  • 亚矩阵云手机:亚马逊第三方店铺多账号安全合规运营的核心技术支撑
  • Matplotlib 可视化大师系列(六):plt.imshow() - 绘制矩阵与图像的强大工具
  • 2026年计算机毕设推荐:基于大数据的慢性肾病数据可视化分析系统技术选型指南【Hadoop、spark、python】
  • 决策树基础学习教育第一课:从概念到核心原理
  • 【Canvas与旗帜】美国星条旗玻璃光圆饼