2016-06-09 81 views
0

createQuestionDataAsync不返回数据。 flQuestion.create函数调用写入mongodb集合的快速服务。问题被写入并且值返回并存储在“数据”中。我无法像典型的回调(err,data)那样设置它,因为回应只返回一个值。也许我需要做出这个承诺?或者我可以保留一个回调一些修改?角度回调没有将数据返回给角度承诺

angular.module( '应用')工厂( 'flQuestionCrud',函数($ HTTP,$ Q,$状态,flQuestion){ 回报{ createNewQuestion:功能(newQuestionData){ 的console.log(”之前 - flQuestion.create“);

 // Question Call Back Function 
     function questionCallBack(err, data){ 
      if (err){ 
       console.log("flQuestionCrud - Error " + err); 
       console.log("flQuestionCrud - Error Statement " + err); 
       return null; 
       //$state.go('questionCreate'); 
      }else { 
       console.log("flQuestionCrud - Success " + data); 
       console.log("flQuestionCrud - Success Statement " + data.statement); 
       console.log("flQuestionCrud - Success Question id " + data._id); 
       return data; 
       //$state.go('questionUpdate'); 
      } 
     } 

     // Try/catch 
     function createQuestionDataAsync(questionData, cb) { 
      console.log("flQuestionCrud - Before Call to create ") 
      flQuestion.create(questionData, function(data) { 
       console.log("flQuestionCrud - After Call to create ") 
       if (!data){ 
        return cb("Error Creating Data"); 
        //return null; 
       } 
       try { 
        console.log("flQuestionCrud - Try Section - Success " + data); 
        console.log("flQuestionCrud - Try Section - Success Statement " + data.statement); 
        console.log("flQuestionCrud - Try Section - Success Question id " + data._id); 
       } 
       catch (err) { 
        return cb("Error Creating Data"); 
        //return null; 
       } 
       return cb(null,data); 
       //return data; 
      }); 
     } 

     createQuestionDataAsync(newQuestionData,questionCallBack); 

回答

0

你的回调节点回调风格角不使用这种类型的回调的返回值包含data场,其中实际响应存储

这是假设。您使用$http