【发布时间】:2020-06-24 03:27:13
【问题描述】:
我有一个父组件,它看起来像下面设置为状态的 btnColor 数组:
export default class Contact extends React.Component {
constructor(props) {
super(props)
this.state = {
btnColor: ['White', 'Silver', 'Grey', 'Black', 'Orange']
}
}
我还有一个子选择组件,如下所示:
const FormSelect = ({
name,
type,
placeholder,
onChange,
className,
value,
error,
children,
label,
btnColor,
...props}) => {
return (
<div className={className}>
<label htmlFor={name}>{label}</label>
<select>
<option
id={name}
name={name}
type={type}
placeholder={placeholder}
onChange={onChange}
value={btnColor.map(btnColor)}
/>
</select>
</div>
)}
我想做的是将 btnColor 数组中的所有项目映射到子组件中,然后将它们用作 FormSelect 组件中的下拉选项。
理想情况下寻找不涉及钩子的答案。 - 提前感谢您的任何帮助。
【问题讨论】:
-
你使用材质 UI 吗? 2) 是子组件中的表单吗?是否要访问父组件中的选定选项
-
您的
this.state.btnColor似乎是一个字符串,而不是一个数组 -
@CodeZombie 对除了材质 UI 之外的所有选项都是。
-
@evaline - 你是对的,我已经更新了代码。谢谢。