繁体   English   中英

如何在 node.js 异步中的上部 scope 变量中插入值

[英]How to insert value in upper scope variable in node.js async

我想要输入buckets result1 但我想我对此有误解..
result2返回这个

Request {
  domain: null,
  service: Service {
    config: Config {
      credentials: [Credentials],
      credentialProvider: [CredentialProviderChain],
      region: 'ap-northeast-2',
      logger: null,
      apiVersions: {},
      apiVersion: null,
      endpoint: 's3.ap-northeast-2.amazonaws.com',
      httpOptions: [Object],
      maxRetries: undefined,
      maxRedirects: 10,

     ...

这是我的代码:

exports.printBuckets = () => {
  let result1 = []
  let result2 = s3.listBuckets((err, data) => {
    buckets = data.Buckets
    console.log(buckets); // Got AWS buckets from AWS!
    result1 = data.Buckets;
  });

  console.log(result1); // [] <- I want insert buckets data to here!
  console.log(result2); // Request object what i wrote up 
};

如何解决变量result1的值等于buckets的问题?

我对 async / await 有一个误解。现在我使用 async/await 和 promise 来修复它。

exports.printBuckets = async () => {
  let result = await s3.listBuckets().promise().then(result => result);

  console.log(result);
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM