mongoose-throw-if-not-found-plugin
v0.1.0
Published
Throw if a document cannot be found
Downloads
31
Maintainers
Readme
mongoose-throw-if-not-found-plugin
Don't check for nulls when running your Mongoose 5 queries - let rejected promises do it for you.
Before:
MyModel.findOne({foo: 'bar'})
.then(doc => {
if (!doc) {
throw new Error('Doc not found');
}
useDoc(doc);
});
After:
MyModel.findOne({foo: 'bar'})
.throwIfEmpty()
.then(doc => {
useDoc(doc);
})
.catch(e => {
console.log(e.status); // 404
console.log(e.message); // Not found
console.log(e.name); // MongooseDocumentNotFoundError
})
Usage
Simply import the library once anywhere in your code:
require('mongoose-throw-if-not-found-plugin');
It'll handle itself from there ;)
TypeScript usage
While typings are provided, sometimes your IDE may fail to recognise them for code hints. If this happens, simply add the import to the file you're using it from:
import 'mongoose-throw-if-not-found-plugin';