Как отобразить имя опции в Ant Design Select при использовании setFieldsValue - PullRequest
0 голосов
/ 10 ноября 2019

Я использую компонент из Ant Design, и недавно я добавил кнопку, чтобы выбрать все опции. Функциональность в порядке, но в поле она показывает ключи или идентификаторы параметров вместо того, чтобы показывать имена параметров.

Мой вопрос: есть ли способ показать имена параметров при использовании метода setFieldsValue в множественном выборе? компонент?

Я пытался вставить объект с другими свойствами (идентификатор, имя, ключ, значение, заголовок и т. д.) в эту часть selecteds.push(kid.id);, но ни одна из них не работает.

Мой выборфункция выглядит следующим образом

selectAllKids = () => {
    const { kids } = this.props;
    let selecteds = [];

    kids.map(kid => {
      selecteds.push(kid.id);
    });

    this.props.form.setFieldsValue({
      kids: selecteds
    });
  };

и мой компонент:

         {getFieldDecorator("kids", {
          rules: [
            {
              required: true,
              message: "Selecciona alumnos"
            }
          ]
        })(
          <Select
            size="large"
            mode="multiple"
            placeholder="Selecciona alumnos"
            loading={kidsLoading}
          >
            {kids.map(kid => (
              <Option key={kid.id}>{kid.name}</Option>
            ))}
          </Select>
        )}

Мой текущий результат: enter image description here Мой ожидаемый результат: enter image description here Заранее спасибо!

1 Ответ

0 голосов
/ 11 ноября 2019

Вы должны сопоставить с name, а не с id:

this.props.form.setFieldsValue({
  kids: kids.map(({ name }) => name)
});

Edit Q-58788999-SelectAllInForm

...