const roomSchema = new mongoose.Schema({ roomname: { type: String, required: true }, users: { type: Array, required: true }, createdDate: { type: Date, default: new Date() }, admins: { type: Array }, groupType: { type: String, required: true }, requests: { type:Array }, ip: { type:String, required:true }, country:{ type:String, required:true } }); const roomModel=mongoose.model('room',roomSchema) const getUsersInaRoom=async ()=>{ const res = await roomModel.find({ 'roomname': 'room1' }); console.log(res); } getUsersInaRoom();El error que arroja es:
node:6123) UnhandledPromiseRejectionWarning: MongoInvalidArgumentError: el método "collection.find()" acepta como máximo dos argumentos en Collection.find (/Users/macpro/Desktop/React/chat-using-socket/backend/node_modules/mongodb/lib/collection .js:238:19)
Solía funcionar perfectamente hace unos minutos, ahora arroja el error anterior.
Parece que hay un problema con la nueva versión de mongoose. Ejecute npm rm mongoose para desinstalar la versión actual, npm i mongoose@5.13.8 para instalar la anterior y vuelva a intentarlo.
Este problema ocurre cuando llamas a find() antes de que mongoose.connect() tenga éxito. Espere mongoose.connect() antes de llamar a find().
Compruebe si está especificando algunas de las siguientes opciones al conectarse a MongoDB: useNewUrlParser , useUnifiedTopology , useFindAndModify , useCreateIndex . Si es así, elimínelos del objeto de opciones y vuelva a intentarlo.