如何返回以下 _.map + Promise 函数

How to return the following _.map + Promise function?

本文关键字:map Promise 函数 何返回 返回      更新时间:2023-09-26

我有两个函数,一个用于查找 Parse 对象,另一个使用该查找函数并循环遍历对象:

店铺.js:

const store = {}
const Document = Parse.Object.extend('Document')
store.find = () => {
  const query = new Parse.Query(Document)
  return query.find()
}
store.fetch = () => {
  return store.find().then((results) => {
    _.map(results, (result) => {
      return result.toJSON()
    })
  })
}

现在我只是做console.log()来记录输出:

主.js

console.log(store.fetch())

但是console.log记录了这一点:

ParsePromise {_resolved: false, _rejected: false, _resolvedCallbacks: 数组[0], _rejectedCallbacks: 数组[0]}

如何修改代码以获取实际的对象数组?

  1. 您的fetch函数必须返回这样的_.map结果

    store.fetch = () => {
      return store.find().then((results) => {
        return _.map(results, (result) => {
          return result.toJSON()
        })
      })
    }
    

    以便附加到store.fetch的处理程序将获取由 _.map 返回的数组对象

  2. store.fetch()将返回一个 Promise 对象,该对象将异步解析。所以你需要附加一个then处理程序并打印结果,就像这样

    store.fetch().then((result) => console.log(result));