一 受控组件的基本使用

import React, { PureComponent } from 'react';class App extends PureComponent {constructor(props) {super(props)this.state = {username: ''}}render() {return (<div><form onSubmit={ e => this.handleSubmit(e) }><label htmlFor="username">{/*受控组件*/}用户:<input type="text"id='username'value={ this.state.username }onChange={ e => this.handleChange(e)}/></label><input type="submit" value="提交" /></form></div>);}handleSubmit(e) {e.preventDefault();console.log(this.state.username)}handleChange(e) {console.log(e.target.value)this.setState({username: e.target.value})}
}export default App;

二 受控组件-select使用

/** @Description: * @Version: 2.0* @Autor: sun* @Date: 2022-10-18 00:20:50* @LastEditTime: 2022-10-18 00:54:46*/
import React, { PureComponent } from 'react';
class App extends PureComponent {constructor(props) {super(props)this.state = {fruits: '西瓜'}}render() {return (<div><form onSubmit={ e => this.handleSubmit(e) }><label htmlFor="username">{/*受控组件*/}<select name="fruits"onChange={e=>this.handleChange(e)}value={this.state.fruits}><option value="香蕉" label="香蕉"></option><option value="苹果" label="苹果"></option><option value="西瓜" label="西瓜"></option></select></label><input type="submit" value="提交" /></form></div>);}handleSubmit(e) {e.preventDefault();console.log(this.state.fruits)}handleChange(e) {console.log(e.target.value)this.setState({fruits: e.target.value})}
}export default App;

三 受控组件-多参数使用

/** @Description: * @Version: 2.0* @Autor: sun* @Date: 2022-10-18 00:33:11* @LastEditTime: 2022-10-18 00:56:30*/
import React, { PureComponent } from 'react';class App extends PureComponent {constructor(props) {super(props)this.state = {username: '',password: '',age: ''}}render() {return (<div><div><form><label htmlFor="username">用户:<input type="text" id='username' name="username"  value={ this.state.username }  onChange={ e => this.handleChange(e)}/></label></form></div><div><form><label htmlFor="password">密码:<input type="text"  id='password'   name="password"  value={ this.state.password }  onChange={ e => this.handleChange(e)}/></label></form></div><div><form><label htmlFor="age">{/*受控组件*/}年龄:<input type="text" id='age' name="age" value={ this.state.age }   onChange={ e => this.handleChange(e)}/></label></form></div><input type="submit" value="提交"  onClick={ e => this.handleSubmit(e) }/></div>);}handleSubmit(e) {e.preventDefault();const { username, password, age } = this.stateconsole.log(username, password, age)}handleChange(e) {this.setState({//计算属性名称[e.target.name]: e.target.value})}
}export default App;

四 非受控组件

/** @Description: * @Version: 2.0* @Autor: sun* @Date: 2022-10-18 00:40:12* @LastEditTime: 2022-10-18 00:57:39*/
import React, { PureComponent, createRef } from 'react';class App extends PureComponent {constructor(props) {super(props)this.state = {username: ''}this.usernameRef = createRef()}render() {return (<div><form onSubmit={e=> this.handleSubmit(e)}><label htmlFor="username">{/*受控组件*/}用户:<input type="text" id='username' ref={this.usernameRef}/></label><input type="submit" value="提交" /></form></div>);}handleSubmit(e) {e.preventDefault();console.log(this.usernameRef.current.value)}handleChange(e) {console.log(e.target.value)this.setState({username: e.target.value})}
}export default App;

14-受控组件和非受控组件使用相关推荐

  1. [react] 受控组件和非受控组件有什么区别?

    [react] 受控组件和非受控组件有什么区别? 受控组件用value和组件的state绑定,当value更新时,会自动更新state 非受控组件没有value,采用ref直接操作dom 个人简介 我 ...

  2. 深入react技术栈(10):受控组件和非受控组件

    我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注前端小歌谣 受控组件 非受控组件 受控组件和非受控组件的区别 文章参考深入React技术栈

  3. 受控组件和非受控组件

    受控组件和非受控组件 React的受控组件与非受控组件的概念是相对于表单而言的,在React中表单元素通常会持有一下内部的state,因此它的工作方式与其他HTML元素不一样,而获取表单元素内部sta ...

  4. React中受控组件和非受控组件

    受控组件 在React中,每当表单的状态发生变化时,都会被写入到组件的state中,这种组件在React被称为受控组件.受控组件中,组件渲染的状态与它的value或者checked相对应.React通 ...

  5. React 之受控组件和非受控组件

    在React中,所谓受控组件和非受控组件,是针对表单而言的. 表单受控组件 表单元素依赖于状态,表单元素需要默认值实时映射到状态的时候,就是受控组件,这个和双向绑定相似. 受控组件,表单元素的修改会实 ...

  6. React-表单处理(受控组件,非受控组件)

    受控组件: value值受到了react状态控制的表单元素 React中将state中的数据与表单元素的value值绑定到了一起,由state的值来控制表单元素的值 非受控组件: 非受控组件借助于re ...

  7. React---什么是受控组件、非受控组件

    受控组件: 在随后的用户输入中,能够控制表单中输入元素的组件被称为受控组件,即每个状态更改都有一个相关联的处理程序. 例如,我们使用下面的 handleChange 函数将输入框的值转换成大写: ha ...

  8. 【React】之受控组件和非受控组件

    React中的组件根据是否受React控制可分为受控的和非受控的. 一.受控组件 表单元素依赖于状态,表单元素需要默认值实时映射到状态的时候,就是受控组件,这个和双向绑定相似. 受控组件,表单元素的修 ...

  9. 【REACT-受控组件和非受控组件】

    REACT-受控组件和非受控组件 概述 受控组件 非受控组件 受控组件应用ToDoList 概述 React中的组件根据是否受React控制可分为受控的和非受控的. React 中的受控组件和非受控组 ...

  10. React的受控组件和非受控组件

    一.受控组件 表单元素依赖于状态,表单元素需要默认值实时映射到状态的时候,就是受控组件,这个和双向绑定相似. 受控组件,表单元素的修改会实时映射到状态值上,此时就可以对输入的内容进行校验. 受控组件只 ...

最新文章

  1. VUE的本地应用-V- bind
  2. linux shell数学计算器,技术|使用 GNU bc 在 Linux Shell 中进行数学运算
  3. Livemesh文件同步功能--使用图解
  4. python easygui进度条_Python _easygui详细版
  5. sql server数据库课程设计分析
  6. python 核心编程第5章(习题)
  7. oracle内存表与临时表,Oracle 临时表之临时表空间组(TTG)
  8. WinForm与WebForm调试输出
  9. 2.13_binary_search_tree(BST)_二叉搜索树
  10. Okio 1.9简单入门
  11. python类和对象_Python类和对象
  12. APS技术中的多目标规划问题
  13. Robust Representation Learning with Feedback for Single Image Deraining论文解读
  14. IDEA打包jar 跳过测试
  15. MySQL之查询关键字
  16. 全栈云服务是个什么东东?!
  17. 百度地图js轨迹展示
  18. Janus源码分析(1)——源码结构
  19. 9款红包封面来了,定好闹钟领取!
  20. 老黄历:编码式的统治策略

热门文章

  1. python做题记录之正方形拼接
  2. 机械键盘入门:教你如何正确选择机械键盘!学习游戏两不误
  3. EduCoder-Web程序设计基础-html5—表格高级样式的设置-第2关:设置表格的外边框样式
  4. -XX:SoftRefLRUPolicyMSPerMB从名字看不出什么意思?【官文解读】
  5. Django分布式路由
  6. uniapp下载文件 例(Word)以及下载其他文件,Word文件的转发,保存,查看
  7. [笔记]光照系统 实时GI、烘焙GI
  8. org.eclipse.jdt版本更新导致包引入问题
  9. matlab怎样编写延时函数,编写延时函数的简单方法
  10. RNN(三) 在SLU中的应用