react笔记 8-19 事件对象、获取dom元素、双向绑定

本文主要是介绍react笔记 8-19 事件对象、获取dom元素、双向绑定,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、事件对象event

通过事件的event对象获取它的dom元素

run=(event)=>{event.target.style="background:yellowgreen" //event的父级为他本身event.target.getAttribute("aid")            //这样便获取到了它的自定义属性aid}render() {return (<div><h2>{this.state.msg}</h2><br/><button aid='123' onClick={this.run}>事件对象</button></div>)}

2、表单事件、获取input的值

第一种方式OnChange

    constructor(props) {super(props)this.state = {msg:'我是一个home组件'}}inputChange=(event)=>{this.setState({msg:event.target.value     //通过事件对象的value获取值})}render() {return (<div><h2>{this.state.msg}</h2><br/><input type="text" name="" onChange={this.inputChange}></input></div>)}

第二种方式 ref //ref在vue中也有 不过写法不同

    inputChange = () => {let val = this.refs.username.valuethis.setState({msg:val})}render() {return (<div><h2>{this.state.msg}</h2><input ref="username" type="text"  name="" onChange={this.inputChange}></input></div>);}

3、键盘事件

    inputKeyUp = (e) => {if(e.keyCode === 13){this.setState({msg: e.target.value})}}render() {return (<div><h2>{this.state.msg}</h2><input ref="username" type="text"  name="" onKeyUp={this.inputKeyUp}</input></div> //另有keyDowm等等);}

4、实现双向数据绑定

通过change事件实现数据改变影响视图  视图改变影响数据即可 //module改变会自动影响视图

 constructor(props) {super(props)this.state = {msg: null}}inputChange = (e) => {this.setState({msg:e.target.value})}render() {return (<div><h2>{this.state.msg}</h2><input  type="text"  name="" onChange={this.inputChange} value={this.state.msg}></input></div>);}

这篇关于react笔记 8-19 事件对象、获取dom元素、双向绑定的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1147990

相关文章

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

使用Python实现获取网页指定内容

《使用Python实现获取网页指定内容》在当今互联网时代,网页数据抓取是一项非常重要的技能,本文将带你从零开始学习如何使用Python获取网页中的指定内容,希望对大家有所帮助... 目录引言1. 网页抓取的基本概念2. python中的网页抓取库3. 安装必要的库4. 发送HTTP请求并获取网页内容5. 解

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

css中的 vertical-align与line-height作用详解

《css中的vertical-align与line-height作用详解》:本文主要介绍了CSS中的`vertical-align`和`line-height`属性,包括它们的作用、适用元素、属性值、常见使用场景、常见问题及解决方案,详细内容请阅读本文,希望能对你有所帮助... 目录vertical-ali

C++从序列容器中删除元素的四种方法

《C++从序列容器中删除元素的四种方法》删除元素的方法在序列容器和关联容器之间是非常不同的,在序列容器中,vector和string是最常用的,但这里也会介绍deque和list以供全面了解,尽管在一... 目录一、简介二、移除给定位置的元素三、移除与某个值相等的元素3.1、序列容器vector、deque

C++常见容器获取头元素的方法大全

《C++常见容器获取头元素的方法大全》在C++编程中,容器是存储和管理数据集合的重要工具,不同的容器提供了不同的接口来访问和操作其中的元素,获取容器的头元素(即第一个元素)是常见的操作之一,本文将详细... 目录一、std::vector二、std::list三、std::deque四、std::forwa

使用Python高效获取网络数据的操作指南

《使用Python高效获取网络数据的操作指南》网络爬虫是一种自动化程序,用于访问和提取网站上的数据,Python是进行网络爬虫开发的理想语言,拥有丰富的库和工具,使得编写和维护爬虫变得简单高效,本文将... 目录网络爬虫的基本概念常用库介绍安装库Requests和BeautifulSoup爬虫开发发送请求解

基于@RequestParam注解之Spring MVC参数绑定的利器

《基于@RequestParam注解之SpringMVC参数绑定的利器》:本文主要介绍基于@RequestParam注解之SpringMVC参数绑定的利器,具有很好的参考价值,希望对大家有所帮助... 目录@RequestParam注解:Spring MVC参数绑定的利器什么是@RequestParam?@

浅析CSS 中z - index属性的作用及在什么情况下会失效

《浅析CSS中z-index属性的作用及在什么情况下会失效》z-index属性用于控制元素的堆叠顺序,值越大,元素越显示在上层,它需要元素具有定位属性(如relative、absolute、fi... 目录1. z-index 属性的作用2. z-index 失效的情况2.1 元素没有定位属性2.2 元素处

Python实现html转png的完美方案介绍

《Python实现html转png的完美方案介绍》这篇文章主要为大家详细介绍了如何使用Python实现html转png功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 1.增强稳定性与错误处理建议使用三层异常捕获结构:try: with sync_playwright(