【问题标题】:Cloud Code Push User and Queries云代码推送用户和查询
【发布时间】:2016-03-02 20:55:35
【问题描述】:

我正在尝试执行以下操作,查询明天处于新状态的待处理 WorkOrders 的数量。查询 Employee(安装对象上的指针),然后获取我需要推送的设备,最后发送推送。我对 JavaScript 不是很熟悉,所以我不确定自己到底做错了什么。

我得到的错误是: Uncaught SyntaxError: Unexpected token } in main.js:134

这将是成功和错误功能在警报之后立即出现的发送部分(即 },{ 是它说的错误行)

有什么想法或我该怎么做?我的经验很少,所以这是一种边写边学的东西。

Parse.Cloud.job("NotifyTomNextDaySO", function(request, response) {
var query = new Parse.query("WorkOrders");
var workOrderObjs = new []
var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
var startTomorrow = tomorrow.setHours(0,0,0,0);
var endTomorrow = tomorrow.setHours(23,59,59,59);
var numberFound = 0;
query.greaterThan("date", startTomorrow);
query.lessThan("date", endTomorrow);
query.equalTo("status", "New");
query.count({
    success : function(count) {
        numberFound = count;
        var userQuery = new Parse.query("Employees");
        userQuery.equalTo("firstName", "Tom");
        userQuery.equalTo("lastName", "Sedletzeck");
        userQuery.find({
            success : function(employeeFound) {
                var installQuery = Parse.Query(Parse.Installation);
                query.equalTo("employee", employeeFound);
                Parse.Push.send({
                    where: installQuery,
                    data :{
                        alert: (numberFound + " work orders promised for tomorrow with a status of New.");
                    }
                }, {
                    success: function() {

                    },
                    error: function() {

                    }
                });
            }
        });
    }
});
}

);

编辑:

Parse.Cloud.job("NotifyTomNextDaySO", function(request, response) {
var query = new Parse.Query("WorkOrders");
var workOrderObjs = [];
var tomorrow = new Date();
tomorrow.setDate(tomorrow.getDate() + 1);
var startTomorrow = tomorrow.setHours(0,0,0,0);
var endTomorrow = tomorrow.setHours(23,59,59,59);
var numberFound = 0;
query.greaterThan("date", startTomorrow);
query.lessThan("date", endTomorrow);
query.equalTo("status", "New");
query.count({
    success : function(count) {
        numberFound = count;
        var userQuery = new Parse.query("Employees");
        userQuery.equalTo("firstName", "Trever");
        userQuery.equalTo("lastName", "Ewing");
        userQuery.find({
            success : function(employeeFound) {
                var installQuery = Parse.Query(Parse.Installation);
                query.equalTo("employee", employeeFound);
                Parse.Push.send({
                    where: installQuery,
                    data :{
                        alert: (numberFound + " work orders promised for tomorrow with a status of New.")
                    }
                }, {
                    success: function(error) {
                        response.success("Done");
                    },
                    error: function(error) {
                        response.error("Error1: " + error);
                    }
                });
            }, error : function(error) {
                response.error("Error2: " + error);
            }
        });
    }, error : function(error) {
        response.error("Error3: " + error);
    }
});
}
);

我在 Error3 上遇到错误:[object Object]

【问题讨论】:

    标签: javascript parse-platform parse-cloud-code


    【解决方案1】:
                data :{
                    alert: (numberFound + " work orders promised for tomorrow with a status of New.");
                }
    

    你在这里定义了一个对象,所以你不应该有;

    既然你现在有一个备用的;,你可以把它放在那里:

    var workOrderObjs = new [];
    

    这不是强制性的,因为 JS 很古怪,但强烈建议不要依赖自动添加终止符。

    【讨论】:

    • 好的,谢谢!但现在我得到“未调用成功/错误”失败状态。任何想法?我以为我是为每个人做的。
    • 我想我已经解决了这个问题,但现在我的最后一个出现“错误”,我更新了我的代码以显示。
    • 我也刚想通了,你知道“不能在 r.default 处调用一个类作为函数”是什么意思吗?我在上面找不到任何东西?
    • 我没有。但是您尝试简化查询以测试问题所在。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2016-04-16
    • 2016-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多