Guardrails to prevent bad practices or do some serious mistakes when using NestJS Moongose or ORMs.
Guardrails to prevent bad practices or do some serious mistakes when using NestJS Moongose or ORMs.
No one likes unused variables, and we remove them. But with Mongoose there is a catch, if you attach inject model to non-model variable accidentally, you will get no error, but you will get a bug. This plugin will help you to avoid this.
One such incident is shown below:
Before | After |
---|---|
You'll first need to install ESLint:
npm i eslint --save-dev
Next, install eslint-plugin-nestjs-orm
:
npm install eslint-plugin-nestjs-orm --save-dev
Add nestjs-orm
to the plugins section of your .eslintrc
configuration file. You can omit the eslint-plugin-
prefix:
{
"plugins": [
"nestjs-orm"
]
}
Then configure the rules you want to use under the rules section.
{
"rules": {
"nestjs-orm/mongoose-no-bad-model-injection": "error"
}
}