AJAX响应包装器

时间:2017-06-22 20:40:19

标签: javascript

我写了一个小的Web请求响应包装器来打印后端的数据,但我希望找到一个更好的方法,因为我将它传递给一些开发人员,并希望让他们的生活更轻松。

这是我目前的包装

class Req {
    static log(req){
       return req()
          .done(function(data){
              console.log(data);
          })
          .fail(function(err){
              console.log(err);
          });
    }
}

我的所有后端命令都是某些类的静态函数。要将功能发送到Req.log,我必须使用bind

Req.log(BackendRoute.someCommand.bind(BackendRoute, {param1:1, param2:2}));

有没有办法发送函数BackendRoute.someCommand而不必将BackendRoute绑定到函数?

这是BackendRoute的样子

class BackendRoute {
    static someCommand(params){
       return BackendRoute.post(params);
    }
}

1 个答案:

答案 0 :(得分:2)

您可以使用胖箭头。这是一个你正在创建的新功能,但它更清晰,但仍然很短:

Req.log(() => BackendRoute.someCommand({param1:1, param2:2}));