10 votes

(node:71307) [DEP0079] Avertissement de dépréciation

Essayer de mettre à jour le document MongoDB en obtenant un avertissement de dépréciation en tant que

(node:71307) [DEP0079] DeprecationWarning : Fonction d'inspection personnalisée sur les objets via .inspect() est obsolète

Version du nœud v10.5.0, version db v3.6.5, version Mongoose mongoose@4.1.12

Campground.findById(campgroundId, function(err, campground){
    if(err){
        console.log(err);
    } else {
        console.log(campground.celebrity);
        Celebrity.create(celebrityData, function(err, celebrity){
            if(err){
                console.log(err);
            } else {
                //save comment
                celebrity.save();
                campground.celebrity.push(celebrity);
                campground.save();
                console.log(celebrity);
                //req.flash('success', 'Created a comment!');
            }
        });
    }
});

2voto

Volodymyr Khmil Points 203

Vous devez ajouter les options useCreateIndex à votre méthode de connexion

mongoose.connect(keys.mongoURI, {
    useNewUrlParser: true,
    useCreateIndex: true,
})

1voto

MalcolmOcean Points 1288

Totalement aléatoire, mais au moins ce n'est pas une réponse d'imitateur : J'ai obtenu cet avertissement de dépréciation (et un comportement inattendu) lorsque j'ai accidentellement utilisé Model.find() au lieu de Model.findOne()

Mon code erroné ressemblait donc à ceci

User.find(query)
.then(user => {
  console.log(user.emailSettings.confirmToken)
})

...avec un objet/réseau ordinaire, cela échouerait avec TypeError: Cannot read property 'confirmToken' of undefined mais avec un tableau de documents Mongo, il fait apparemment cette chose inspectée et donne maintenant cet avertissement de dépréciation.

1voto

Je voudrais ajouter à ce fil de discussion que cela peut également être lié à d'autres dépendances.

Par exemple, rien de ce que j'ai mis à jour ou défini pour NodeJS, MongoDB ou Mongoose n'est à l'origine du problème. connect-mongodb-session avait été mis à jour et commençait à envoyer la même erreur. La solution, dans ce cas, consistait simplement à revenir en arrière dans la version de connect-mongodb-session de la version 2.3.0 a 2.2.0 .

enter image description here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X