我正在“Meteor.js Javascript 框架入门”一书中做练习,其中有一个部分创建了一个名为 categories 的模板,然后一个 {#each} 循环遍历集合。这是为了打印而完成的结果显示在屏幕上。这有效,代码如下。
<template name ="categories">
<div class ="title">my stuff</div>
<div id='categories'>
{{#each lists}}
<div id="category">
{{Category}}
</div>
{{/each}}
</div>
</template>
我的问题是这样的:
在下面的代码中,排序参数似乎没有做任何事情。我很好奇它应该做什么。我知道理论上它应该“排序”,但是当我使用参数时没有任何变化。我在流星文档中查找了它,但我无法弄清楚。我正在尝试修改代码,使其以不同的顺序排序。通过这种方式,我可以看到结果并真正了解{sort:的 工作原理。我尝试将{sort: {Category: 1}})修改为{sort: {Category: -1}})以及{sort: {Category: 2}})并且结果始终相同。
Template.categories.lists = function() {
return lists.find({}, {sort: {Category: 1}}); // Works
/* return lists.find({}); */ // Works just the same
}
收藏品如下:
lists.insert({Category:"DVDs", items: [{Name:"Mission Impossible" ,Owner:"me",LentTo:"Alice"}]});
lists.insert({Category:"Tools", items: [{Name:"Linear Compression Wrench",Owner:"me",LentTo: "STEVE"}]});