Forms 语义反应-表单。选择如何使用自定义数组选项

Forms 语义反应-表单。选择如何使用自定义数组选项,forms,reactjs,web,semantic-ui,semantic-ui-react,Forms,Reactjs,Web,Semantic Ui,Semantic Ui React,关于From.Select的语义反应是为其提供一个prop选项,该选项需要具有如下特定数组: const options = [ { key: 'm', text: 'Male', value: 'male' }, { key: 'f', text: 'Female', value: 'female' }, ] <Form.Field control={Select} label='Gender' options={options} placeholder='Gender' />

关于From.Select的语义反应是为其提供一个prop选项,该选项需要具有如下特定数组:

const options = [
 { key: 'm', text: 'Male', value: 'male' },
 { key: 'f', text: 'Female', value: 'female' },
]
<Form.Field control={Select} label='Gender' options={options} placeholder='Gender' />
这样使用它:

const options = [
 { key: 'm', text: 'Male', value: 'male' },
 { key: 'f', text: 'Female', value: 'female' },
]
<Form.Field control={Select} label='Gender' options={options} placeholder='Gender' />
我在使用错误的道具时出错了

我的问题是,如何将自己的数组与此Select组件一起使用
谢谢

您可以在将选项发送到语义组件之前重新格式化选项:

import { get, map } from 'lodash'

const reformatOptions = options =>
  map(options, e => ({
    key: get(e, 'date'),
    value: get(e, 'date'),
    text: get(e, 'title'), // (or whatever other format you wish to use)
  }))

然后将
options=reformatOptions(options)
传递到您的语义组件

您可以在将选项发送到语义组件之前对其进行重新格式化:

import { get, map } from 'lodash'

const reformatOptions = options =>
  map(options, e => ({
    key: get(e, 'date'),
    value: get(e, 'date'),
    text: get(e, 'title'), // (or whatever other format you wish to use)
  }))
然后将
options=reformatOptions(options)
传递给语义组件