目录
- 类组件
-
函数组件
- props是只读的
-
组件间通信
上期讲了state,接下来讲讲props。props功能在于组件间通信(父子组件),首先说说在各种组件中的用法:
类组件
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
函数组件
?
1 2 3 4 5 6 7 8 9 10 11 |
|
在函数组件中,props只需要传一个值就好了,非常方便 在React文档中,对props的解释是
所以,我们通过props能得到父类组件上传的值,也能通过props.children
直接得到jsx写成的子组件
props是只读的
React在文档中强调
纯函数的概念我们已经在redux中解释过了,总而言之,我们不能改变props的值。
组件间通信
现在来总结一下组件间通信:
- props 首先上一个类组件的写法:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
|
然后写一个函数组件的写法:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
- eventbus(订阅-发布机制)
这个可以理解为弱化的redux。这边我们用库pubsub-js来写。写法如下:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
|
这个方法常用的就是三个api,第一个subscribe,发布的相应的事件,并且定义事件要做什么事。第二个是publish,订阅发布的事情,并且传入相应要改变的值。第三个是unsubscribe用来取消发布的事情,做内存的优化
以上就是React三大属性之props的使用详解的详细内容,更多关于React三大属性之props的资料请关注服务器之家其它相关文章!
原文链接:https://juejin.cn/post/6950932903274496031
本文链接:https://my.lmcjl.com/post/15456.html
4 评论