解析后台作业 - Parse.Query.each()保证行为

时间:2015-07-22 17:27:44

标签: javascript parse-platform jobs

感谢您的帮助!

我有一个后台工作,我必须使用Parse.Query.each()重写,因为我现在有几千个对象,并且数字将继续在我的产品的生命周期中增长。 Here's a link to Parse.Query.each()'s documentation.

我必须通过两个不同的对象集查询两个自定义类,并根据数据修改第三个自定义类的对象数组。我试图使用promises执行两个查询然后保存我的对象数组。但是,我的第一个查询返回一个错误,并尝试访问错误消息是一个错误,因为它说错误未定义。我无法调试我的代码,因为我无法获得相关的错误消息,以找出第一个查询未成功的原因。

这是我的代码设置,我尝试将promises与Query.each结合使用:

//set up queries
query1.each
(
    function( object1 )
    {
        {//do stuff modifying arrayOfObject3s}
    }
).then
(
    function( results )
    {
        return query2.each
        (
            function( object2 )
            {//do more stuff modifying arrayOfObject3s}
        );
    },
    function( error )
    {
        //This is the line I'm getting an error at, saying "Cannot read property 'message' of undefined at..."
        status.error("There was an error while performing query1: " + error.message); 
    }
).then
(
    function( results )
    {
        return Parse.Object.saveAll( arrayOfObject3s);
    },
    function( error )
    {
        status.error("There was an error performing query2: " + error.message)
    }
).then
(
    function( arrayOfObject3s )
    {
        status.success("Performed the queries and saved the objects!");
    },
    function( error )
    {
        status.error("There was an error while saving the objects: " + error.message);
    }
);

我明显误解了如何使用query.each以及解析承诺,因为我的工作立即失败并出现错误说"无法读取属性' message'未定义的..."并给出第一个function( error )块中第一个.then()的行号。我已经尝试了上面看到的内容,以及前两个results块的第一个函数中没有.then()的内容,得到了相同的错误。

如果您有任何建议可以正确设置,请告诉我。我是这些承诺的新手,这是我第一次尝试使用query.each()。

0 个答案:

没有答案