通过 context 来传值
Const { Provider , Consumer } = React.createContext();<Provider value=”pink”></Provider> 传递数据<Consumer>{ data => <span>我是子节点—{ data }</span> }</Consumer> 接收数据// Provider 是写在最外层的<Provider value={this.sate.num}><div className='parent'><Father /></div></Provider>// Consumer 哪里用就在哪里写<div className='son'><Consumer>{data => console.log(data)}</Consumer></div>
Props
- Props的值可以是任意类型
- 也可以添加验证规则来规范传的值
在组件调用的时候写成双标签给里面写内容的话,就相当于给此组件通过props传了数据,
数据是一个对象里面有个children键值,如果传的是一个函数的话,那么props.children拿到的就是这个函数,如果传的是字符串,那么同理,但是如果是标签的话,props.children就是一个虚拟的DOM对象
<Son>{hello}</Son>这样传值只能通过props.children来取值<Son data={hello}/>这样传值的话直接通过props.data就能取到值
