1
我不确定这里发生了什么问题/我该如何修复它。解析:云代码变量声明
Parse.Cloud.job("expireTimes", function(request, response) {
var currentTime = new Date().getTime()/1000;
var Wait = Parse.Object.extend("Wait");
Parse.Object.registerSubclass("Wait", Wait);
var query = new Parse.Query(Wait);
query.select(["times", "timestamp"]);
query.find({
success: function(results) {
for (var i = 0; i < timestamps.length; i++) {
if (currentTime >= timestamps[i] + 60) {
// Delete old wait times
timestamps.splice(i, 1);
times.splice(i, 1);
i--;
} else {
break;
}
};
response.success("Got " + results.length + " Query results: " + results[0].objectId);
},
error: function(error) {
response.error("Request failed with response code");
console.error("Request failed with response code ");
}
});
});
它告诉的我,时间戳是不确定的:
I2015-11-27T17:00:03.419Z]Deployed v17 with triggers:
Jobs:
expireTimes
E2015-11-27T17:01:04.489Z]v17 Ran job expireTimes with:
Input: {}
Result: ReferenceError: timestamps is not defined
at e.query.find.success (main.js:9:24)
at e.<anonymous> (Parse.js:14:28224)
at e.s (Parse.js:14:27156)
at e.n.value (Parse.js:14:26575)
at e.s (Parse.js:14:27284)
at e.n.value (Parse.js:14:26575)
at e.s (Parse.js:14:27284)
at e.n.value (Parse.js:14:26575)
at e.<anonymous> (Parse.js:14:27228)
at e.s (Parse.js:14:27156)
不知道这意味着什么/如何解决它。我会假设声明时间戳,但我认为这已经完成了在“times”和“timestamp”列中检索数组。
任何帮助将不胜感激。 谢谢
两个'timestamp'和'倍'是数组。 'times'接受用户提交的时间,'timestamp'只是简单地将用户提交的时间放到Int中。这样,我可以看到'timestamp + 3600
不知道这是否有用,但请记住,所有解析对象都提供createdAt和updatedAt,并且查询可以将这些与平等(但通常更好)不等式进行比较,如'query.lessThan(“updatedAt”,someDate)',其中someDate是一个JS日期对象。 – danh
还要注意,数组属性可以通过get()获得,并且它们的内容像任何JS数组一样循环。 – danh