Estoy intentando concatenar la consulta mongodb en una variable en el nodo js según mi condición. No puedo concatenar los atributos de mongodb aquí. He incluido la salida que estoy buscando a continuación. Entiendo que el ícono + solo concatena cadenas.
var query; query += db.collection('collection_name'); query += query.find(); if(project == true) { query +=query.project(project_parameter); } if(limit == true) { query += query.limit(); } // Output needed if i run the query variable db.collection('collection_name').find({id:1}).project({_id:1}).limit(10).toArray();
Si estas funciones admiten el encadenamiento, puede hacer algo similar a esto:
let query = db.collection('collection_name') query = query.find() if (project === true) { query = query.project(project_parameter) } if (limit === true) { query = query.limit() } Esto se debe a que llamar a una función en db.colllection('collection_name') devuelve un objeto modificado en el que puede seguir llamando a las funciones.