问题描述
在nodejs中使用mongoose
const query=myModel.find({name:'xiaoming'});
const total=query.count();
const data=query.skip(20).limit(10);
为什么这样写会报错?
正确的写法应该怎样写?
在nodejs中使用mongoose
const query=myModel.find({name:'xiaoming'});
const total=query.count();
const data=query.skip(20).limit(10);
为什么这样写会报错?
正确的写法应该怎样写?
查了下文档,应该是因为你这是两次查询,一次count查询,一次skip加limit查询,所以你的query查询永远都是最先指定的count查询,所以你第二次的结果其实就是count返回的结果,所以是number类型的数字。
虽然不知道你为啥又不写回调,又不走Promise形式也能得到结果。我也就这么写了~分两次查询就行了,因为你第二次查询是skip加limit,所以应该没办法不走2次查询又能得出总文档数又能得出分页查询得结果。