2016-06-18 5 views
0

Controller.jsにコントローラにパッシングのエラーメッセージがangularjs

var vm = this; 
vm.admin = {}; 

vm.add = function() { 
    API.addAdmin(token, vm.admin) 
     .then(function (resp) { 
      vm.hideForm = true; 
      vm.showButton = true; 
      Notify.green(resp); 
     }, function (resp) { 
      Notify.red(resp); 
     }); 
}; 

API.js

function addAdmin(token, dataObj) { 
     return Constant.getApiUrl() 
      .then(function (url) { 
       $http({ 
        method: 'POST', 
        url: url + '/client/admin', 
        headers: { 
         'Token': token 
        }, 
        data: dataObj 
       }).then(handleResp); 

       function handleResp(resp) { 
        var responseStatus = (resp.status >= 200 && resp.status < 300) ? 'good' : 'bad'; 
        if (responseStatus === 'good') { 
         console.log("Success" + resp); 
         return resp; 
        } else { 
         console.log("Failed" + resp); 
         return resp; 
        } 
       } 
      }) 
    } 
  1. 私は、APIでの成功応答を取得する場合、私は必要それを私のコントローラ内の成功関数に接続するために、私のAPIにエラーメッセージが表示されたら、それをコントロールのエラー関数に接続する必要がありますler.私のAPIからの応答ステータスをどのように評価すればよいですか(成功またはエラーのいずれかです)。

  2. 私のコントローラからAPIにsuccessfn、errorfnを渡したくありません(代替手段がない場合のみ)。

  3. APIから応答データを取得して通知メッセージに表示する必要があります。

ありがとうございます!サービスで

答えて

0

( "originalData "に応答値を代入):

var promise = myserviceName.myFunction($scope.originalData); 
       promise.$promise.then(function() { 
         console.log($scope.originalData);         
        }); 

そしてあなたは" originalDataを" あなたをチェックして書き込むことができます。

angular.module('appname').service('myserviceName', function(yourExistingService){ 
      this.myFunction= function(originalData) { 
     //for next line to work return promise from your addAdmin method. 
      var promise = yourExistingService.getResponseFromURL(originalData); 
          return promise; 
      }       
     }); 

そして、あなたのコントローラであなたのニーズに応じてコードを入力してください。詳細はhttp://andyshora.com/promises-angularjs-explained-as-cartoon.htmlをご覧ください。

+0

こんにちは@Amit、機能は私と同じですが、私は約束の中で成功か失敗かを区別する必要があります**サービスからControllerに戻る –

関連する問題