我有一个对象,其中包含多个常见的键值 Prop ,我想将它们传递给一些jsx。像这样:

const commonProps = {myProp1: 'prop1',myProp2: 'prop2'};
<MyJsx commonProps />

我希望这可以作为传递单个 Prop 的功能:
<MyJsx myProp1={commonProps.myProp1} myProp2={commonProps.myProp2}/>

这可能吗?

最佳答案



是的,为什么您认为不可能,但是发送方式不正确。
<MyJsx commonProps />的含义是:

<MyJsx commonProps={true} />

因此,如果默认情况下不指定任何值,它将采用true。要传递对象,您需要这样编写:
const commonProps = {myProp1: 'prop1',myProp2: 'prop2'};
<MyJsx commonProps={commonProps} />

更新:

如果您有一个对象,并且想要将所有属性作为单独的prop传递,则将其编写为:
<MyJsx {...commonProps} />

关于reactjs - 将对象作为 Prop 传递给jsx,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49081549/

10-09 16:54