【学】React的学习之旅4-添加事件(onChange)
- 实现联动绑定,在文本框中输入内容的同时,后面的
span里内容跟着一起变化; onChange(),一旦触发一次变动,就执行某个函数;- 既然已经在
getInitialState属性里申明了一个变量inputContent来赋值给span标签的内容,那在onChange函数中就可以修改state中inputContent的值
var TextInput = React.createClass({
//给input组件赋值一个初始化的state,用来存储用户输入的内容
getInitialState:function(){
return {
inputContent:'请输入内容' //申明一个变量inputContent,初始化值为空
};
},
inputHandler: function(ev){ //通过设置组件的state,来修改相应span里的显示
this.setState({ //记住要设置状态要用组件实例的setState方法,这里的ev.target是文本框,是事件的触发对象,然后inputContent状态属性的值赋值为当前输入框里的内容
inputContent: ev.target.value
});
ev.stopPropagation();
ev.preventDefault();
},
render: function(){
return (
//这里的span里内容设置为state.下的自己申明的变量inputContent,初始化时为空'',但是会随着文本框里内容的改变而跟着改变
<div>
<input onChange={this.inputHandler} type="text" />
<span>{this.state.inputContent}</span>
</div>
);
}
});
ReactDOM.render(
<TextInput />,
oWrap
);
【学】React的学习之旅4-添加事件(onChange)的更多相关文章
- 【学】React的学习之旅3 - 添加事件(onClick)
button除了用<input type="button">之外,还可以直接用<button></button>来创建,而2个标签的中间的内容就 ...
- 【学】React的学习之旅1
React的学习之旅1 单标签要有斜杠代表结束 用React.createClass()方法时,赋值后的组件名称首字母一定要大写 一定要先定义组件,再用ReactDOM.render调用 组件里ren ...
- React 函数组件中对window添加事件监听resize导致回调不能获得Hooks最新状态的问题解决思路
React 函数组件中对window添加事件监听resize导致回调不能获得Hooks最新状态的问题解决思路 这几天在忙着把自己做的项目中的类组件转化为功能相同的函数组件,首先先贴一份该组件类组件的关 ...
- 【学】React的学习之旅7-官方例子总结
如果在标签里有注释,除了使用/**/之外,如果写在子标签中,外面还需要用{}包起来,指明这段是javascript代码,否则这段注释会直接显示在页面上,例如 render:function (){ r ...
- 【学】React的学习之旅5-组件的嵌套
复习 [array].map(function(item,index){})方法,传参里的函数需要有return值,一般用map()后都要用一个变量接一下,这个返回的还是一个数组,只是把每次遍历到的数 ...
- 【学】React的学习之旅2 - React Component的生命周期
分成三个状态: Mounted Update Unmounted Mounted:当我们看到组件在浏览器中从无到有的效果的时候,mounted已经结束了,这个组件已经被mounted了 有这个阶段有2 ...
- 【学】React的学习之旅6-组件的嵌套2
<input type=text placeholder='aaa'>, placeholder属性是定义文本框在没有输入值之前显示的一段灰色提示 ()=>{}箭头函数在ECMA6里 ...
- 【原】React中,map出来的元素添加事件无法使用
在使用react中,经常用到react的map函数,用法和jquery里中的map一样,但是,如果你在每个map出来的元素中添加,你会发觉添加的事件无法关联, 比如,我们很多的评论,我需要在每个评论下 ...
- jQuery学习之旅 Item8 DOM事件操作
1.jquery页面载入事件 1.传统加载事件 <body onload="函数名()"> 页面全部html和css代码加载完成之后再调用指定的onload函数 win ...
随机推荐
- Questa Functional Verification-autocheck
1.AutoCheck analysis introduce Autocheck是自动对RTL代码使用形式验证进行规则检查的检查器,是Questa Verify tools的一部分.Autochenc ...
- 开源框架中常用的php函数
类的自动加载后直接实例化 //自动加载类 function my_autoloader($class) { include $class . 'Class.php'; } spl_autoload_r ...
- web设计中那些因素可能影响网站后期优化
web设计中那些因素可能影响网站后期优化. 1.网站代码的简洁实用性.网站源文件html代码.js代码.css代码等应尽可能的压缩处理.能用jquery-min.js的最好不要用jquery.js:c ...
- iftop 安装以及相关参数及说明(转载自csdn)
转载自http://blog.csdn.net/cqinter/article/details/6250211 关于 Iftop iftop 是类似于top的实时流量监控工具.主要用来显示本机网络 ...
- display:inline; display:block;
block(块级元素): div .from. p .table. pre.h1~h6. dl .ol .ul等 inline(内联元素): span.a.strong.em.label.input. ...
- data process for large scale datasets
Kmeans: 总体而言,速度(单线程): yael_kmeans > litekmeans ~ vl_kmeans 1.vl_kemans (win10 + matlab 15 + vs1 ...
- php 删除一段字符串的中的中文
<?php header('Content-type:text/html;charset=utf-8'); function p($arr){ echo "<pre>&qu ...
- 【转载】Android 自动化测试 Emmagee
Emmagee 是一个性能测试小工具 用来监控指定被测应用在使用过程中占用机器的CPU, 内存,流量资源的性能小工具 Emmagee 介绍 Emmagee是网易杭州研究院QA团队开发的一个简单易上手的 ...
- js switch 扩展
//demo var num=99 switch(n){ case 80<n: document.write("优秀");break; case 70<n: docum ...
- 初识Java-分数录入系统
package classTest; import java.util.Scanner; public class scoreArrangement { /** * 选择界面(main) */ p ...