我对Parse很新,我正在努力解决某个问题。我有一个用户类
班级
和一个评论(我想我的配置非常标准)我没有足够的声誉来发布图片 - 听起来多么悲伤 - : - )
我有一个查询,基本上我选择了所有的帖子(以及相关的用户,理想情况下我希望得到与帖子相关的所有评论)为此,我这样做:
var query = new Parse.Query("Post");
query.include("user");
query.find({
success: function(objects) {
for (var i = 0; i < objects.length; i++)
{
var object = objects[i];
console.log(object.id + object.get("user").get("imageUrl") + object.get('text'));
var commentquery = new Parse.Query("Comment");
commentquery.equalTo("post", object);
commentquery.find({
success: function(comments) {
console.log(object.id + object.get("user").get("imageUrl") + object.get('text'));
基本上我尝试获取帖子然后获取每个帖子的评论。不幸的是,我的代码中的第二个控制台日志总是打印相同的对象(比如忽略for循环)。
我真的不知道我做错了什么(可能是回调或可能是查询设置),但我无法克服这一点。此外,如果任何专家知道更好的方法,而不需要多余的数据或知道一个关于Parse的好教程/书(除了解析文档),我将非常感激。
提前致谢!
答案 0 :(得分:0)
使用匿名函数关闭对象的工作。
for (var i = 0; i < objects.length; i++)
{
var object = objects[i];
(function(object){
//do stuff with object;
})(object);
}
您正在使用最新的对象,因为分配后的工作尚未完成,因此对象[i]过早地进入下一个对象。额外的功能应该有所帮助。
或者你可以
for (var i = 0; i < objects.length; i++)
{
(function(object){
//do stuff with object;
})(objects[i]);
}