react学习(一)

1、React提供的这个ref属性,表示为对组件真正实例的引用,其实就是ReactDOM.render()返回的组件实例;需要区分一下,ReactDOM.render()渲染组件时返回的是组件实例;而渲染dom元素时,返回是具体的dom节点。

<input ref="tips" />
//可以用这种方式  如果想选择这个DOM节点的话  可以用react的方法ReactDOM.findDOMNode(this.refs.tips); //获得的是input的真实DOM元素
这种是直接设置的,ref也能接收回调函数例如:
<input ref={ref => this.name = ref}/>
this.name 获取的就是input的真实DOM元素

2、this的指向

class Calculator extends React.Component {
constructor(props) {
super(props);
this.state = {
value: '',
answer: "水没有沸腾"
};
this.change = this.change.bind(this) //下面不用箭头函数 需要在这里指定this
}
//这里如果不用箭头函数的话 this不是指向Calculator 但是也可以在上面绑定给change
change = (e) => {
console.log(this.xxx.value);
const answer = this.xxx.value;
this.setState({value: this.xxx.value});
if (answer <= 100) {
this.setState({answer:"水没有沸腾"});
}else{
this.setState({answer:"水沸腾了"});
}
};

render() {
const value = this.state.value;
return (
<fieldset>
<legend>请输入温度</legend>
<input
ref={ref => this.xxx = ref}
onChange={this.change}/>
<span>{this.state.answer}</span>
</fieldset>
);
}
}

 

XXX   详细X
基本翻译
n. (青少年禁看的)X级片或内容
num. 罗马数字30
网络释义
xXx: 极限特工
BMX XXX: 极限自行车挑战赛
xxx based: 基于

posted @ 2018-05-21 17:23  C丶c  阅读(169)  评论(0编辑  收藏  举报