首页 > 解决方案 > 使用 JSON 从 Promise 中获取值

问题描述

我有这个代码:

      const { username, password, provider } = this;
  login(username, password, provider, (err) => {
    this.signingIn = false;

    if (err) {
      this.hasError = true;
    }

    const { $route, $router } = this;

    let redirect = '/';
    if ($route.query.redirect !== undefined) {
      redirect = $route.query.redirect;
    }

    $router.push(redirect);
    this.errors = err.response.json();
    var a = this.errors;
    console.log(a);
    //console.log(JSON.stringify(a));
  });

当我从导航器中看到控制台时,输出为:

Promise {<resolved>: {…}}
  __proto__: Promise[[PromiseStatus]]:"resolved"
  [[PromiseValue]]: Objecterrors: Array(1)
    0: 
      code:"validation.required"
      detail:"password is required"
      where:"request.body.password"__proto__: Objectlength: 1__proto__: 
Array(0)__proto__: Object

我刚刚收到一个 Promise 对象,我只想从 console.log() 中的“代码”或“详细信息”或“位置”获取值

如果我尝试使用 stringify 我只会得到两个键 {}

你知道一种特殊的方法,或者,这是获得这个值的方法吗?

标签: javascriptjsongetpromise

解决方案


推荐阅读