将命名和未命名的参数传递给无状态组件

时间:2018-03-06 01:43:40

标签: reactjs ecmascript-6 redux redux-form react-props

有没有办法将命名和未命名的参数传递给同一个无状态组件。

所以......例如......

这很有效。

const renderSoftwareForm = ({ fields, meta: { error, submitFailed } }) => ( 
<div>sample</div>
);

这有效

const renderSoftwareForm = (props) => ( 
<div>sample</div>
);

但我除了父母的道具之外还有其他参数......

是否有一种语法允许更像这样的东西?

const renderSoftwareForm = (props, { fields, meta: { error, submitFailed } }) => ( 
<div>sample</div> 
);

1 个答案:

答案 0 :(得分:2)

你应该能够做到这一点。

const renderSoftwareForm = ({ fields, meta: { error, submitFailed }, ...props }) => ( 
<div>sample</div>
);

这显式处理fieldsmeta属性,未显式处理的任何属性都是props对象的一部分。

这需要object rest spread support,它不是JavaScript标准的一部分,但是can be enabled via Babel plugin(这通常在React开发中完成)。