2013-06-01 52 views
0

我使用parse.com作爲我的後端。 我已經提出了下面的雲代碼,它給了我{u'code': 141, u'error': u'success/error was not called'}代碼。我知道我在第一次成功後沒有進行response.success調用,但是我正在使用名爲nextSaleRate的鏈接函數進行調用。 有什麼辦法解決它?parse.com上的JavaScript異步函數雲

下面是完整的代碼:

function SaleWithRate(){ 
    saleId = undefined; 
    rating = 0.0; 
} 

function nextSaleRate(saleList, nextSale, arr, response){ 
    if(nextSale < saleList.length) { 
    var sale = new SaleWithRate(); 
    sale.saleId = saleList[nextSale].id; 

    //creating ShaleSale object for Rates query 
    var ShaleSale = Parse.Object.extend("ShaleSale"); 
    var saleForRate = new ShaleSale(); 
    saleForRate.id = sale.saleId; 

    //query 
    var rateQuery = new Parse.Query("ShaleSaleRate"); 
    rateQuery.equalTo("saleId", saleForRate); 
    rateQuery.find({ 
     success: function(rateList) { 
     var sum = 0; 
     var index = 0; 
     for(var j = 0; j < rateList.length; j++) { 
      index++; 
      sum += rateList[j].get("rate"); 
      if(index === 0) { 
      sale.rating = 0; 
      } 
      else { 
      sale.rating = sum/index; 
      } 
      arr.push(sale); 
      nextSale++; 
      nextSaleRate(saleList, nextSale, arr, response); 
     } 
     }, 
     error: function() { 
     response.error("rate lookup failed"); 
     } 
    }); 
    } 
    else { 
    console.log("when do I get in" + nextSale); 
    response.success(arr); 
    } 
} 

Parse.Cloud.define("getSalesWithRate", function(request, response){ 
    var query = new Parse.Query("ShaleSale"); 
    query.ascending("createdAt"); 
    //query.notContainedIn("objectId", request.params.saleIds); 
    query.find({ 
    success: function(results) { 
     var arr = new Array(); 
     nextSaleRate(results, 0, arr, response); 
    }, 
    error: function() { 
     response.error("sale lookup failed"); 
    } 
    }); 
}); 

回答

1

錯誤消息實際上是指這樣的事實,response.success()不是從你的雲功能調用。您沒有將響應對象傳遞給您的下一個銷售稅率函數。

+0

我改變了我的代碼,因爲你建議@Hector拉莫斯,但我仍然得到同樣的錯誤。我編輯了這個問題,現在我將響應對象傳遞給'nextSaleRate'。 – vlio20

+0

有一些錯誤(邏輯和語法),所以糾正他們後,做@Hector拉莫斯建議所有工作精美!謝謝!!! – vlio20