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

何为受控组件(controlledcomponent) ?

“受控组件 (Controlled Component)” 是 React 中表单处理的一个核心概念。

定义

受控组件:指那些表单输入值由 React 组件的 state 控制的组件。

也就是说:

  • 表单控件的 显示值(value) 来自组件的 state;

  • 当用户输入时,通过 onChange 事件 更新 state;

  • 组件的 state → 控件的值,形成了单向数据流。

通俗理解

你可以理解成:

React “接管”了输入框的值。
输入框的内容不再由浏览器自己管理,而是由 React 的 state 管理。

示例对比

受控组件
function Form() {const [name, setName] = React.useState('');const handleChange = (e) => setName(e.target.value);const handleSubmit = (e) => {e.preventDefault();alert('提交的名字是:' + name);};return (<form onSubmit={handleSubmit}><input value={name} onChange={handleChange} /><button type="submit">提交</button></form>);
}
  • 输入框的值 value={name} 由 React 的 state 控制;

  • 用户输入时触发 onChange 更新 state;

  • React 永远知道输入框里是什么。

非受控组件(Uncontrolled Component)
function Form() {const inputRef = React.useRef();const handleSubmit = (e) => {e.preventDefault();alert('提交的名字是:' + inputRef.current.value);};return (<form onSubmit={handleSubmit}><input ref={inputRef} /><button type="submit">提交</button></form>);
}
  • 表单的值由 DOM 自己维护;

  • React 只是“读取”这个值;

  • React 不知道实时的输入变化。

对比总结

对比项 受控组件 非受控组件
数据来源 React state DOM 自身
取值方式 通过 state 通过 ref
监听变化 onChange 更新 state 不一定监听
适用场景 数据同步、校验、动态表单 简单场景、第三方库
优点 数据可控、便于校验 更接近原生
缺点 代码略多,需写 onChange React 不知道值的变化

一句话总结

受控组件 = 表单输入受 React state 控制的组件。
React 的 state 是“唯一数据源”。

http://www.rkmt.cn/news/31342.html

相关文章:

  • Java 开发开篇
  • 深入解析:Node.js 完全安装与使用指南:Windows 平台详细教程
  • 2025 年液位计厂家最新推荐榜,深度解析行业头部品牌技术实力与市场口碑
  • 2025 年减速机厂家最新推荐榜,技术实力与市场口碑深度解析行星/直角换向器/中空旋转平台减速机厂家推荐
  • 2025 年连接器厂家最新推荐榜:优质品牌全方位解析,含 M8/M12 / 防水等品类测评结果
  • 选择电流探头时是看峰峰值还是最大值?
  • Java dubbo spring springboot中的spi机制
  • Oracle Data Pump 网络模式直接迁移详解(使用数据库链接(Database Link))
  • 2025年10月防脱生发产品推荐:十款口碑榜对比与临床数据全解析
  • 2025年10月法律咨询律所推荐榜:盈科律所规模与专业度双领先
  • 2025年10月税务专家邵立推荐榜:财税破局者年度评价
  • 2025 年娱乐麦克风,一拖二无线麦克风,舞台演出麦克风厂家最新推荐,技术实力与市场口碑深度解析
  • 完整教程:Redis 是如何实现消息队列的?
  • 微软-SQLServer-2012-和-Hadoop-全-
  • 矢量图
  • 2025 年电驱动厂家最新推荐排行榜:依托国家智能测控系统产业计量测试联盟测评数据,精选伺服电机、新能源汽车电机等领域优质品牌
  • 2025 年减速器源头厂家最新推荐榜:RV / 精密 / 通用减速器测试品牌技术实力权威测评
  • 2025 年阳台光伏厂家最新推荐榜:技术实力与市场口碑深度解析,含逆变器/储能/光伏板优质企业
  • 折旧分配表点击修改按钮报错,软件卡死
  • 命令行数据科学实用指南-全-
  • 架构师必备:限流方案选型(使用篇)
  • 日记15
  • Sqlite EF For ConsoleCore
  • 日记16
  • 应用安全 --- 在线可执行文件分析
  • 通过onvif ptz 控制摄像头以及通过opencv 实时进行数据处理
  • 【GitHub每日速递 251027】14.3k star! 告别AI开发痛点!Parlant让大模型指令遵循不再是难题
  • 百天打卡
  • 北の独自升级
  • What versions of Python still work in Windows XP?