一文讲清楚React受控组件和非受控组件的区别与联系

一文讲清楚React受控组件和非受控组件的区别与联系

1. 概述

  • 首先明确什么是受控,什么是非受控
  • 受控,谁,受谁的控制,在React中,就是表单输入值受this.state的控制
  • 换句话说,就是表单显示什么值,不是由表单被输入什么值,而是完全由this.state决定,this.state是什么,表单就显示什么。
  • 比如我一个input框,如果是受控组件,我们在input框内输入“hahaha”,她并不会显示hahaha,而是要看input的value绑定的this.state的值是什么,然后才显示什么。这就是受控组件
  • 那么相反,非受控组件就好理解多了,就是input输入值不受this.state的控制,输入什么就显示什么
  • 理解了这个,我们在详细分开来说

2. 受控组件

  • 受控组件,根据上面说的,就是表单的输入值完全由this.state控制
  • 上例子
import React,{
   
   useState} from 'react'
const MyComponent=()=>{
   
   
    const [name,setName]=useState('tom')
    const handleChande=(e)=>{
   
   
        setName(e.target.value)
    }
    const handleSubmit=(e)=>{
   
   
        e.preventDefault(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

许先森森

爱我就打我

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值