Add guard to stop loadClass copying Document if Document is used as base of loaded class (same hack as implemented for Model already). #12820
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
I want to set
Document
as the base class of aloadClass
class so I can inherit its typings onthis
conveniently. There is a guard condition hack in the code to allow this forModel
already. This PR just extends to guard condition to account for possibility Document is the base class. If that didn't already exist I wouldn't PR this, but since it exists may as well account for Document too, in case people do that, and for consistency.Examples
Something like this:
If you want Typescript to know types for Document methods (updateOne, remove in example) you can either type
this
in every method or do the above. The above is more convenient.Refs #12813.