React---受控组件(Controlled Component)

特性:
Define和initial 通过组件的 state property
Update 只能通过setState()
在 HTML 中,表单元素(如、 和 )之类的表单元素通常自己维护 state,并根据用户输入进行更新。而在React中,使用的是state来渲染,维护以及更新,所以被React 以这样方式控制取值的表单元素称之为受控组件。
例如下面所示的代码
value的属性是由this.state.controlledName来显示的,更新是由click事件onChange 的handleChange通过setState()来完成。

<input name='controlledName' type='text' value={this.state.controlledName} onChange={this.handleChange} />
  handleChange(e) {
        const target = e.target;
        const value = target.type === 'checkbox' ? target.checked : target.value;
        const name = target.name;
        this.setState({
            [name]: value
        })
    }

下面是在一个组件中使用多个表单元素的例子,需要注意的是:
state的属性不能和表单元素中标签的属性重复定义,不然获取不到值。

import React from 'react';
class Co
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值