2013-10-21 50 views
0

所以,我的Javascript並不是最好的,但我必須冒險進入它來運行一些雲代碼功能。我有以下幾點:Parse.com - Cloud Code/JS - 「Can not call method'set'undefined」

Parse.Cloud.define("setCommentIsTitle", function(request, response) { 
    Parse.Cloud.useMasterKey(); 

    var query = new Parse.Query("Comment"); 
    query.equalTo("objectId", request.params.objectId); 

    query.first({ 
     success: function(object) { 

      object.set('isTitle', request.params.isTitle); 
      return object.save(); }, 
     error: function(error) { 
     alert("Error: " + error.code + " " + error.message); 
    } 
}); 

我記錄的objectId我傳遞作爲request.params.objectId,它是正確的。我不明白的是,success被調用,但後來我發現了以下雲碼登錄時,我console.log對象:

I2013-10-21T17:27:52.120Z] object = undefined 

而且XCode中返回以下錯誤:

code=141, error=TypeError: Cannot call method 'set' of undefined 

如果我在query上調用first函數,並且調用了success,那麼不應該表示有返回的對象嗎?爲什麼object未定義?

回答

1

好的,所以這是我的一個愚蠢的錯誤,但也由一個令人困惑的解析錯誤消息。

我的班級名爲Comments,而不是Comment,所以我正在查找錯誤的班級。但是,由於在查詢中調用成功,我開始查找錯誤的所有錯誤位置。

如果我查詢一個甚至不存在的類,爲什麼會調用成功?