在下面的代码中,我想用通过参数 this.params.sortby
传入的值替换名称键,但我无法让它工作。寻求帮助。
如果:
this.params.sortby=location
我想要这个:
Template.MyTemplate.helpers({
data: function () {
return MyCollection.find({},{sort:{name: 1 }});
}
});
变成这样:
Template.MyTemplate.helpers({
data: function () {
return MyCollection.find({},{sort:{location: 1 }});
}
});
最佳答案
您可以使用带有括号表示法的对象来实现动态键命名,如下所示:
var sorter={};
sorter[this.params.sortby]=1;
假设 this.params.sortby
等于 String
“age”,您将拥有以下 sorter
对象:
var sorter={
age:1
};
然后您可以使用它来适本地对您的收藏进行排序:
MyCollection.find({},{sort:sorter});
关于javascript - 如何替换 meteor 集合查询中排序字段的键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25656151/