J'utilise Mongoose code: p> en essayant d'insérer les documents à l'aide d'insertmany () L'erreur suivante s'est produite. P> TypeError: Callback n'est pas une fonction forte> p> Il n'y a pas d'erreur lorsque je supprimai {commandé: false} de mon code. p> p>
3 Réponses :
Vous devez fournir une fonction de rappel afin que lorsque la fonction termine le traitement, elle peut redonner les résultats. Voir la documentation ici P>
https://mongoosejs.com/docs/api.html#model_model.insermany p>
J'en ai besoin comme une promesse ()
avez-vous ajouté ce code const mangoose = exiger ('mangouse'); mangoose.promise = global.promise; code>?
Votre code doit être comme suit:
module.exports.addCustomers = function (customers) { return Customer.insertMany(customers,{ordered :false}, function(err, res){ if(err) { //handle error here } else { //DO stuff if you got response } )}
Obtenir toujours la même erreur. Je pense que c'est une erreur de la version de la mangouste.
C'est un peu étrange. Il devrait être capable de travailler sans le rappel, si vous traitez la réponse comme une promesse. Vous pouvez essayer d'exécuter la requête dans votre fonction:
module.exports.addCustomers = async function (customers) { const result = await Customer.insertMany(customers, {ordered: false}) return result }