2017-06-22 1 views
0

私は、バックエンドからデータをプリントアウトするための小さなWebリクエストレスポンスラッパーを作成しましたが、これをいくつかの開発者に渡してより簡単に使いたいと思っていました。AJAXレスポンスラッパー

これは私の現在のラッパー

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をバインドすることなく、機能BackendRoute.someCommandを送信する方法はありますか?

これはBackendRouteは、あなたが脂肪の矢印を使用することができます

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

答えて

2

のように見えるものです。それはあなたが作成している新しい機能ですが、それは明確に、まだ短いです:

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

これは、あなたが 'BackendRoute.someCommand'は最初から拘束されたくないと仮定すると、少なくとも冗長なアプローチであります – slezica