React三大属性state,props,ref的用法

导入React需要的JS

state

 class Mycomponent extends React.Component{
 // 将变量挂载到实例上
      state={isHot:fasle}
      render(){
          const {isHot}=this.state
          return <h1 onClick={this.change}>今天天气{isHot?'热':'冷'}</h1>
      }
      change=()=>{
       // 改变变量在React中不能直接更改
       const {isHot}=this.state
       this.setState({   
            isHot:!isHot
       })
      }
      ReactDOM.render(<Mycomponent/>,document.getElementById('挂载容器'))
 }

Props

class MyProps extends React.Component{
  render(){
  const {name,age,sex}=this.props
    return(
        <ul>
        <li>年龄:{age}</li>
        <li>名字:{name}</li>
        <li>性别:{sex}</li>
        </ul>
    )
  }
  // 添加规则
  static propsTypes={
     name:PropsTypes.String.isRequired //字符串且必填
      age:PropsTypes.Nunber
      sex:PropsTypes.String
  }
  // 默认值
  static defaultProps={
      name:'jack'
      age:18
  }
}
ReactDOM.render(<MyProps  name="张三" age={18} 性别="男"    />,document.getElementById('挂载容器'))

ref

class refDemo extends React.Component{
    showData=()=>{
      const {input1}=this.refs
      alert(input1.value)
    }
    showData2=()=>{
      const {input2}=this.refs
      alert(input2.value)
    }
 render(){
 return(
 	      <div>
	<input ref="input1" type="text" placeholder="点击按钮提示数据"/>         <button onClick={this.showData}>点我提示左侧的数据</button>
	<input ref="input2" onBlur={this.showData2} type="text" placeholder="失去焦点提示数据"/>
	     </div>
 )
 }
}
ReactDOM.render(<refDemo/>,document.getElementById('挂载容器'))
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值