javascript - "Cannot set property ' 成功 ' of undefined"Parse.com 云代码中的 Promise 错误

标签 javascript parse-platform promise

我正在尝试从“RewardCodes”类中检索用户的所有记录。它们的数量可能超过 1000 个。我有两个函数,一个用于查找记录数,另一个用于检索记录。如果 count 大于 1000,则迭代检索函数。我收到此错误: {"code":141,"error":"TypeError: Cannot set property 'success' of undefined\n at Object.t.Cloud.run (Parse.js:1:71298)\n at main .js:1715:14"} 这是代码:

Parse.Cloud.define("countInteractions", function (request, response){
    var myUser = new Parse.Object("_User");
    myUser.id = request.params.userId;
    var query = new Parse.Query("RewardCodes");
    query.equalTo("UserID",myUser);
    query.count({
        success: function(count){
                var number = 0;
                var Interactions =0;
                number = count;
                interactions = ~~(number / 1000) + 1;
                response.success(interactions); 
            },
            error: function(error){
                response.error(error);
            }
        });
    });



    Parse.Cloud.define("getWonRecords", function (request, response){

        var myId = request.params.objectId;
        var list = [];
        var myUser = new Parse.Object("_User");
        myUser.id = request.params.userId;
        var query = new Parse.Query("RewardCodes");
        query.limit(1000);
        query.equalTo("UserID",myUser);
    //  query.exists("Code");
        query.equalTo("Used",true);
        query.ascending("objectId");
        query.greaterThan("objectId",myId); 
        query.include("CampaignID");
        query.include("UserID");
        query.find({
            success: function(results){
                for(var i=0; i<results.length; i++){
                    var myObject = {
                                    SERIAL:     i,
                                    RCodesId:   results[i].id,
                                    brand:      results[i].get("CampaignID").get("brandId"),
                                    campaignId: results[i].get("CampaignID").id,
                                    code:       results[i].get("Code"),
                                    topText:    results[i].get("CampaignID").get("KazanTextTop"),
                                    bottomText: results[i].get("CampaignID").get("KazanTextBottom")
                                    };
                    list.push(myObject);
                }
                response.success(list); 

            },
            error: function(error){
                response.error(error);
            }
        });
    });


    Parse.Cloud.define("wonRewards3", function (request, response){

        var mainList = [];

    /*ERROR here*/
    Parse.Cloud.run("countInteractions",{userId: request.params.userId}).then(function(Interactions){
            for(var i=0;i<Interactions; i++){
                Parse.Cloud.run("getWonRecords",{objectId: myId, userId: request.params.userId}).then
                (function(list){
                    myId = list[list.length - 1].RCodesId;
                    mainList.push(list);    
                });
            }
            return mainList;
        }).then(function(results){
            response.success(results);
            }, function(error){
                response.error(error);
        });

    });

最佳答案

哇,这里好困惑

    Parse.Cloud.define("wonRewards3", function (request, response){

    var mainList = [];
    // you forgot your });
    /*ERROR here*/
Parse.Cloud.run("countInteractions",{userId: request.params.userId}).then(function(Interactions){
        for(var i=0;i<Interactions; i++){
            Parse.Cloud.run("getWonRecords",{objectId: myId, userId: request.params.userId}).then
            (function(list){
                myId = list[list.length - 1].RCodesId;
                mainList.push(list);    
            });
        }
        return mainList;
    }).then(function(results){
        response.success(results);
        }, function(error){
            response.error(error);
    });

});

关于javascript - "Cannot set property ' 成功 ' of undefined"Parse.com 云代码中的 Promise 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18007385/

相关文章:

javascript - jasmine需要sinon.js吗?

javascript - onclick 和 href 无法在移动设备上协同工作

ios - 当我实现 Parse 时,我得到 "fatal error: unexpectedly found nil while unwrapping an Optional value"

javascript - 解析 request.object.existed() 返回 false

node.js - NodeJS + EJS + Promise : page is not displayed until the promise is fulfilled

javascript - 在 promise 之外返回一个 promise 变量

javascript - 在父级 JavaScript 中查找元素的最佳方法

ios - 使用本地数组数据、Swift、UITableView 更新 Parse 数组

javascript - 同步链接 Promise

javascript - 如何用呈现的值构建与指数相对应的数学公式