react教程,如何理解props.children?组件内容拼装
发布于 作者:苏南大叔 来源:程序如此灵动~

props
在react
中,就是用来传递数据的。数据如此处理,那是组件内部的事情。但是,总是有一些特殊的props
,是有些不按套路出牌的。其中包括refs
和本文的children
,当然也可以使用props
来传递事件函数定义,但并不是本文的讨论范围之内。

苏南大叔的程序如此灵动博客,记录苏南大叔和计算机代码的故事。测试环境:create-react-app@5.0.1
,react@18.2.0
,react-dom@18.2.0
,node@16.14.2
。
文章回顾
首先,本文要说的children
属于props
的范畴,正常情况下,是这么使用props
的,参考文字:

特殊的ref
属性也可以像普通属性那样编写调用代码,但是在后续的props.
中,却无法获得.ref
,因为它是一个保留变量。如果非要当作普通的props
进行传递,那就不要写.ref
,写.ref2
之类的都可以正常使用的。
参考文字:
https://newsn.net/say/react-forwardref.html
props.children
这个children
,也是个类似ref
的特殊保留字。传递方式是用对应的组件标签把children
包裹起来。例如:
在组件内部,除了render
组件自有的控件外,还通过props.children
来获得“被包裹的children”,进行显示。例如:

测试代码
测试代码如下:
整体上来说,用<组件></组件>
进行包裹之后,里面的内容就变成了props.children
传递到了组件里面。
- 类组件的接收方式是
this.props.children
。 - 函数组件的接收方式是:
props.children
。
特别说明的是:这个props.children
就指代的是组件标签内的代码,不一定是常规意义上的布局或内容,也可以是一条路由规则内容等。也是可以主要进行传递的。
结束语
如果有需要,可以在下面的链接中,找到更多react
相关文章:


