1

结合RamdaFolktale函子

_fetchLists是一个执行异步操作的函数,它接受以下参数:

  1. fetchAlllists: 一个异步函数,使用列表对象数组的Result函子解析
  2. listIds: listIds 数组

    它是列表对象数组的returnsResult函子

    • _fetchLists认为是纯函数吗?
    • fetchAlllists实现返回一个用Result解决的承诺,使用Task仿函数而不是普通的承诺有什么好处吗?
const _fetchLists = R.curry(
  async(fetchAllLists, listIds) => {
    const lists = await fetchAllLists();

    return R.map(
      R.compose(
        R.values,
        R.pick(listIds),
        R.indexBy(R.prop('id'))
      ),
      lists
    );
  }
);
4

0 回答 0