К сожалению, find () не возвращает функцию обратного вызова, как вы сделали
License.find((err, licenses) => {})
В Mongoose сортировку можно выполнить любым из следующих способов:
License.find({}).sort('votes').exec((err, licenses) => { ... });
License.find({}).sort([['votes', 1]]).exec((err, licenses) => { ... });
License.find({}).sort({votes: 1}).exec((err, licenses) => { ... });
License.find({}, null, {sort: {votes: 1}}, (err, licenses) => { ... });
Существует специальный синтаксис для более удобной работы с обещаниями, который называется «async / await».
const licenses = await License.find({}).sort({'votes': 1})
Для запуска, который вам нужно сделать асинхронным в вашем коде
router.route('/license').get(async(req, res) => {
try{
const licenses = await License.find({}).sort({'votes': 1})
res.json(licenses);
} catch(e) {
console.log('error:-', e)
}
}}
Наиболее важные License.find({ //pass condition to filter your data })