// Snippet from Template
<div class="post-container">
{{#each elements}}
{{> post-element this}}
{{/each}}
</div>
// Snippet from Client
Meteor.subscribe('thePosts');
// Snippet from Server
Meteor.publish('thePosts', function(){
return Posts.find({}, {sort:{createdAt:-1}, reactive:true});
});
Run Code Online (Sandbox Code Playgroud)
当我做...
Posts.insert({body:postBody, createdAt: new Date()});
Run Code Online (Sandbox Code Playgroud)
post文档被添加并显示在我的列表的末尾,而不是我的发布函数中指定的降序.关于我做错了什么的任何想法?
谢谢!
我正在为角度流星建立一个管理页面.
我已经发布了一个集合中的所有记录:" posts "并且已经订阅了前端的所有记录.
$meteor.subscribe('posts');
Run Code Online (Sandbox Code Playgroud)
在控制器中,如果我从minimongo中选择所有记录的游标,它可以正常工作:
$scope.posts = $meteor.collection(Posts);
Run Code Online (Sandbox Code Playgroud)
但我希望显示分页,所以我想要一次有限的记录,如:
$scope.posts = $meteor.collection(function(){
return Posts.find(
{},
{
sort: {'cDate.timestamp': -1},
limit: 10
}
);
});
Run Code Online (Sandbox Code Playgroud)
它在minimongo中遇到了查询.浏览器挂起了.
" posts "集合仅包含500条记录.当我有200条记录时它工作正常.
任何人都可以给我一个关于我的代码和概念错误的想法吗?
编辑:
好的!当我从查询中评论$ sort行时,它运行正常,如下所示:
$scope.posts = $meteor.collection(function(){
return Posts.find(
{},
{
//sort: {'cDate.timestamp': -1},
limit: 10
}
);
});
Run Code Online (Sandbox Code Playgroud)
但我需要对记录进行排序.那我现在该怎么办?
编辑:
还尝试在sort属性中添加索引,如下所示:
db.Posts.ensureIndex({"cDate.timestamp": 1})
Run Code Online (Sandbox Code Playgroud)
还是同样的问题.