关于react的一些疑问点

参考转载:链接:http://www.jianshu.com/p/83bda9cd8c67

1、refs

  <input type="text" ref="input">

  <div ref="div">222</div>

  <div ref={this.refHandle.bind(this)}>3333</div>

  则打印出来的 

  console.log(this.refs)    //object{input:input,div:div}

  ref是对元素添加的 一个属性,所有添加ref属性的元素,都将被放到一个对象中暂时储存起来,当想要访问这个DOM的时候,就可以通过this.refs.[name]来进行访问;

  ref的值不仅仅可以为一个名字,同时还可以为一个回调函数,

2、this.props

  <div name1="Jack" name2="Mary">666+++</div>

  则打印出来的 

  console.log(this.props);          //object{name1:"Jack",name2:"Mary"}

  this.props将所有的元素中的属性都放到一个对象中储存起来,当利用的时候就可以通过this.props.[name]来调用这个属性;

3.生命周期函数

  3.1 componentDidMount() 再生命周期中只会调用一次,当渲染完成之后,标识已经渲染成为真实DOM插入html中,这时候获取元素就需要ref来获取。

  每次渲染之后都可以调用这个函数里面的逻辑,比如我this.setState()之后,更改了数据的内容,会引发组件的重新渲染。

4、父组件和子组件的互通

  父组件改变子组件,通过改变传入的props属性值即可。

  而子组件改变父组件的状态,则需要在父组件中创建钩子函数,然后让钩子函数通过props传递给子组件,并在子组件中执行。

  那么子组件与子组件之间的交互方式,也就是通过影响共同的父组件来进行交互的。一个子组件通过改变父组件中共同用的参数属性,就可以同时更改兄弟组件之间的变化。

  

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/liumcb/p/7519912.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值