Javascript 我们能否创建一个接受组件并向其添加和应用附加道具的HoC或组合?

Javascript 我们能否创建一个接受组件并向其添加和应用附加道具的HoC或组合?,javascript,reactjs,material-ui,higher-order-components,Javascript,Reactjs,Material Ui,Higher Order Components,我们创建了一个组件,它返回一个自定义的文本字段(使用自定义css和道具),如下所示: const customTextFieldAvailable=(道具)=>{ const{handleOnchange,onBlur,…other}=道具; 返回( ); }; 我想要的是添加一些额外的道具,并应用于此自定义字段的textfield(请注意,这会接受并应用额外的道具,例如autocomplete,autofocus等),大致如下: const customtextfieldswilthextr

我们创建了一个组件,它返回一个自定义的
文本字段
(使用自定义css和道具),如下所示:

const customTextFieldAvailable=(道具)=>{
const{handleOnchange,onBlur,…other}=道具;
返回(
);
};
我想要的是添加一些额外的道具,并应用于此自定义字段的
textfield
(请注意,这会接受并应用额外的道具,例如
autocomplete
autofocus
等),大致如下:

const customtextfieldswilthextraprops=(道具)=>{
常数{
大小,
一旦改变,
安布尔,
价值
自动完成,
自动对焦,
类型,
在键盘上,
……其他
}=道具;
返回(
);
};

我如何创建一个HoC或composition来实现这一点?或者,是否有任何方法可以在不修改原始组件的情况下实现此目的
customTextFieldAvailable

,这应该可以正常工作。您的TextField组件只需要接受传递给它的道具。您可以单独处理它们,也可以只接受作为
…rest
传递到TextField的所有道具,并将它们分布到您正在使用的任何底层组件上


也就是说,如果您已经在现有的包装器组件上接受rest道具,我认为您不需要构建另一个,因为一旦您将
{…other}
传递到TextField

我不确定问题是什么:,您可以详细说明吗?@felixmosh我肯定我会进一步详细说明。这是清楚的还是我应该对此进行进一步的扩展?不幸的是,我对可用组件没有任何控制权,所以我无法修改它。我能做的最好的事情是创建另一个组件,将其作为参数并添加额外的参数(类似于HoC)