Reactjs 如何在react中动态构建组件道具
需要动态构建道具,但对构建道具有点困惑。请检查以下示例,在这种情况下,子表达式组件需要父组件标题Reactjs 如何在react中动态构建组件道具,reactjs,higher-order-components,Reactjs,Higher Order Components,需要动态构建道具,但对构建道具有点困惑。请检查以下示例,在这种情况下,子表达式组件需要父组件标题 function SomeComponent(props){ return <h1>{props.title}</h1> } import SomeComponent from 'someForm'; const contents = { title: 'hello', form: SomeComponent } 功能组件(道具){ 返回{props.
function SomeComponent(props){
return <h1>{props.title}</h1>
}
import SomeComponent from 'someForm';
const contents = {
title: 'hello',
form: SomeComponent
}
功能组件(道具){
返回{props.title}
}
从“someForm”导入SomeComponent;
常量内容={
标题:“你好”,
形式:SomeComponent
}
另一个组件
另一个功能(道具){
返回(
{props.data.form}=>title应该传递给这个组件表达式
类似:->是否可能或如何做到这一点?
);
}
实现这一目标的最佳方式是什么?HOC是一个选项,但问题到底是什么?我希望我正确理解这一点,我认为渲染道具模式将是您的最佳选择。 本质上,在
组件中,呈现子级
,并将变量向下传递给子级
e、 g
render=()=>this.props.children(this.props.title)
假设您在
然后选择要在
内部作为子级渲染的组件以及使用的道具
<Form>
{(title) => <SomeComponent title={title}/>}
</Form>
{(标题)=>}
title
在传递标题道具时,仅此示例。。在将来,它可以被称为任何东西,指的是你传给孩子们的任何东西,可以是道具、状态、特定的处理程序等等。我希望我正确理解这一点,我认为渲染道具模式将是你最好的选择。
本质上,在
组件中,呈现子级
,并将变量向下传递给子级
e、 g
render=()=>this.props.children(this.props.title)
假设您在
然后选择要在
内部作为子级渲染的组件以及使用的道具
<Form>
{(title) => <SomeComponent title={title}/>}
</Form>
{(标题)=>}
title
在传递标题道具时,仅此示例。。将来它可以被称为任何东西,指的是你传给孩子们的任何东西,它可以是道具、状态、特定的处理程序等等。我可以按照我的要求,通过动态构建道具来管理它,而不需要HOC,这符合我的要求,但我不确定性能
const componentWithExtraProp = React.Children.map(form, (child) => {
return React.cloneElement(child, {
title: 'Testing...'
});
});
我能够像下面这样管理我的需求,通过动态构建道具而不需要HOC,这符合我的需求,但我不确定性能
const componentWithExtraProp = React.Children.map(form, (child) => {
return React.cloneElement(child, {
title: 'Testing...'
});
});
somecomponent在这里不能像它的泛型那样使用,它作为表达式组件{somecomponent}@MithunshreVatsa传递,这是一个我做的快速示例,它显示了一个快速的基本渲染道具,这取决于你想把它抽象到什么程度,你也可以做出很好的努力,感谢你的时间和知识,很好。保持不变somecomponent在这里不能像它的泛型那样使用,它作为表达式组件{somecomponent}@MithunshreVatsa传递,这是我做的一个快速示例,它显示了一个快速的基本渲染道具,这取决于你想将它抽象到什么程度,你也可以好好努力,感谢你的时间和知识,一切顺利。坚持下去