小能豆

将对象作为 props 传递给 jsx

javascript

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

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

我希望它能够起到传递个人道具的作用:

<MyJsx myProp1={commonProps.myProp1} myProp2={commonProps.myProp2}/>

这可能吗?


阅读 41

收藏
2024-06-05

共1个答案

小能豆

这可能吗?

是的,这是可能的,但是您发送的方式不正确。

的意思<MyJsx commonProps />是:

<MyJsx commonProps={true} />

因此,如果您不指定任何值,则默认将采用true。要传递对象,您需要像这样编写:

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

更新:

如果你有一个对象,并且想要将所有属性作为单独的 prop 传递,那么可以这样写:

<MyJsx {...commonProps} />
2024-06-05