Zunächst einmal weiß ich, dass ich return
verspricht, diese Warnung zu vermeiden. Ich habe auch versucht, null
wie vorgeschlagen here in the docs zurückgeben. Betrachten Sie dieses Stück Code, ich verwende es in Mongoose pre-save Haken, aber ich habe diese Warnung an anderen Orten erlebt:Bluebird - ein Versprechen wurde in einem Handler erstellt, wurde aber nicht von ihm zurückgegeben
var Story = mongoose.model('Story', StorySchema);
StorySchema.pre('save', function(next) {
var story = this;
// Fetch all stories before save to automatically assign
// some variable, avoiding conflict with other stories
return Story.find().then(function(stories) {
// Some code, then set story.somevar value
story.somevar = somevar;
return null;
}).then(next).catch(next); // <-- this line throws warning
});
Ich habe auch versucht, (zunächst) auf diese Weise:
story.somevar = somevar;
return next(); // <-- this line throws warning
}).catch(next);
Aber es funktioniert auch nicht. Oh, und ich habe zu erwähnen, dass ich Drossel:
var Promise = require('bluebird'),
mongoose = require('mongoose');
mongoose.Promise = Promise;
kein Duplikat von A promise was created in a handler but was not returned from it, der Mann ein Versprechen zurückzukehren vergessen.
Mögliche Duplikat [Drossel Unhandle Ablehnung Fehler von erfolgreichen Jquery Ajax POST] mit (http://stackoverflow.com/questions/33948597/bluebird-unhandled -rejection-error-von-erfolgreich-jquery-ajax-post) – TylerH