const App = () = {
return(
<Article
render={
(getContextProps) => (
<Context {...getContextProps()}>{sometext}</Context>
)}
/>
)
}
大家好,最近我遇到了这段代码,react中的函数组件,在我传入的render属性中,该属性具有getContextProps
作为变量,我对{...getContextProps()}
感到困惑意思是,我的理解是需要使用rest运算符将getContextProps
作为道具传递给子Context组件作为属性,但是我不知道为什么语法是{...getContextProps()}
,所以它是变量或函数?那是React的一些特殊语法吗?
答案 0 :(得分:1)
上述情况是使用JSX spread attributes syntax
将动态弹出窗口传递给Context组件的示例。
上述代码的简化版本为
const App = () = {
return(
<Article
render={
(getContextProps) => {
const props = getContextProps();
(
<Context {...props}>{sometext}</Context>
)}}
/>
)
}
现在在上面的代码中,getContextProps
将返回一个对象,您可以将通行证作为道具传播给Context
组件