react-select 异步不起作用

react-select async doesn't work

const formatData = ((els) => {
  console.log("ELS : ", els.data); /* Got Undefined */
  return _.each(els, (el) => ({
    label: el.first_name,
    value: el.id,
  }));
});


const fetchOptions = ((input, callback) => {
  return fetch("http://reqres.in/api/users")
    .then((res) => {
      callback(null,
        {
          options: formatData(res.json())
        }
      )
    }).then((json) => {
      return {options: json};
    });
});

基于此 documentation,我正在尝试获取数据并将其设置为与 <Select.Async ... />loadOptions 属性 要求的格式相匹配。正如我上面提到的,我得到 Undefined for els.data。谁能告诉我我做错了什么?

res.json() 是异步的。它 returns 一个 Promise,所以在下一个 then.

处理
const fetchOptions = ((input, callback) => {
  return fetch("http://reqres.in/api/users")
    .then((res) => {
      return res.json();
    }).then((json) => {
      // formatData(json);
    });
});