我想根据用户输入的变量进行排序。我有这样的事情:
var find = Record.find(query);
以下工作正常:
find.sort({age: 1});
它按年龄排序。我要执行以下操作:
find.sort({sortField: 1});
我也尝试过:
find.sort[sortField] = 1;
没运气。用传入的字符串变量设置排序的任何方法吗?
最佳答案
假设您正在使用节点v4 +,则可以对计算的属性名称使用ES6 enhanced literal syntax支持:
find.sort({[sortField]: 1});
否则,您需要通过几个步骤来创建排序对象:
var sort = {};
sort[sortField] = 1;
find.sort(sort);
关于javascript - Mongoose 变量排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33160536/