如何在使用 Nodejs 时同步获取实体

How to get Entities synchronously while using Nodejs

我正在尝试获取存储帐户 Table 的数据。 我使用 here.

的方式成功获取了日期

但它正在使用回调。我要同步获取结果!

你可以写一个returnsPromise的辅助函数来synchronous(或者模拟它)

function getSome(mytable, hometasks, num)
  return new Promise((resolve, reject) => {
    tableSvc.retrieveEntity(mytable, hometasks, num, function(error, result, response){
      if(!error){
        resolve(entity // result or response etc)
      } else {
        reject(error)
      }
    });
  })

然后您可以在代码的其他地方使用 async/await(暂停执行),例如

请注意,您只能在 async 函数中使用 await

async function useData() {
  const data = await getSome('mytable', 'hometasks', '1');
  // use data here
}

或者用简单的 promise as(注意,这不会暂停执行,then 中的代码又是一个回调函数)

const data = getSome('mytable', 'hometasks', '1');
data.then(res => // do something)

看起来 cosmos 现在有 sdkPromise 支持。

在 MDN

上阅读有关 Promise and async/await 的更多信息