微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

React 学习日记--组件三大属性ref

<!DOCTYPE html>
<html>
<head>
  <Meta charset="UTF-8">
  <title>07_component_refs</title>
</head>
<body>
<br>
  <div id="example"></div>

  <script type="text/javascript" src="../js/react.development.js"></script>
  <script type="text/javascript" src="../js/react-dom.development.js"></script>
  <script type="text/javascript" src="../js/babel.min.js"></script>

  <script type="text/babel">
    /*
    需求: 自定义组件, 功能说明如下:
      1. 界面如果页面所示
      2. 点击按钮, 提示一个输入框中的值
      3. 当第2个输入框失去焦点时, 提示这个输入框中的值
   */
  class Mycomponent extends React.Component{
	  constructor(props){
		  super(props)
		  this.show=this.show.bind(this)
		  this.tshow=this.tshow.bind(this)
	  }
	  show(){
		  const input=this.refs.content
		  //alert(input.value)  第一种方法  官方不推荐
		  alert(this.input.value)
	  }
	  tshow(event){
		  console.log(event.target)  //节点
		  alert(event.target.value)
	  }
	  render(){
		  return (
		  <div>
		  
		  <input type="text" ref="content"/>&nbsp;&nbsp;
		  <input type="text" ref={input=>this.input=input}/>&nbsp;&nbsp;
		  
		  <button onClick={this.show}>提示</button>&nbsp;&nbsp;
		  <input type="text" onBlur={this.tshow}/>&nbsp;&nbsp;
		  </div>
		  )
	  }
  }
  ReactDOM.render(<Mycomponent/>,document.getElementById('example'))
  </script>
</body>
</html>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐