微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-可链接的诺言方法

如何使以下可链接方法起作用?

即promise方法应该包装从getto返回的数据.

// I need to do both:

// return object directly
return client.get(args);

// return promise
return client.get(args).promise();

为什么?有一个使用此签名的库,我需要对其进行模拟以进行测试.

编辑:答案已应用

client.get = function(args) {
  let obj = {foo: 'bar'}; // get data from somewhere
  obj.promise = function() {
      return new Promise((resolve,reject) => {
        console.log(this); // {foo: 'bar'}
        resolve(this);
        // Todo: reject logic
      });
  };
  return obj;
};
最佳答案
您似乎在寻找

client.get = function(args) {
  let obj = {foo: 'bar'}; // get data from somewhere
  obj.promse = function() {
    return Promise.resolve(this);
  };
  return obj;
};

原文地址:https://www.jb51.cc/js/531175.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐