Преобразование результатов асинхронной выборки для элемента управления async response-select

Я пытаюсь преобразовать возвращаемые значения из вызова async fetch и вернуть их в компонент async response-select. Он заполнит компонент выбора («пустыми» записями, поскольку они не в правильном формате), если я просто передам результат выборки, но если я попытаюсь преобразовать результат выборки в {label: X, value: Y} формат, компонент выбора реакции не показывает значений в раскрывающемся списке.

Функция заполнения опционов

  const promiseOptions = inputValue =>
    new Promise(resolve => {
      resolve(
        fetch("/api/Client")
          .then(resp => resp.json())
          .then(function(data) { //not working if I transform data here
            data.map(x => {
              return {
                value: x.id,
                label: x.name
              };
            });
          })
      );
    });

React select async-компонент

<AsyncSelect cacheOptions defaultOptions loadOptions={promiseOptions} />

person gamecockcowboysfan    schedule 16.01.2019    source источник
comment
Пожалуйста, предоставьте больше кода, и вы должны использовать setState при получении ответа   -  person El.    schedule 17.01.2019


Ответы (1)


в этом случае вы должны использовать setState при получении ответа, а затем для преобразования данных в метку значения вы должны обработать его в loadOption с помощью другого метода или функции; fetch - это метод Async по своей природе, и использование Promise излишне

person El.    schedule 16.01.2019