Yar*_*nST 6 javascript mongoose mongodb node.js typescript
我正在利用 mongoose类模式。
并在我的 Node 项目中使用 TypeScript。
我已经按照Typescript 的方式关注了 Mongoose...?确保我的模型知道我定义的模式,所以我有自动完成等功能。
然而,模式类变得更加棘手。正如他们的文档中所写:
loadClass() 函数允许您从 ES6 类中引入方法、静态和虚函数。类方法映射到架构方法,静态方法映射到架构静态,getter/setter 映射到虚拟方法。
所以我的代码看起来像这样:
interface IUser extends mongoose.Document {
firstName: string,
lastName: string
};
const userSchema = new mongoose.Schema({
firstName: {type:String, required: true},
lastName: {type:String, required: true},
});
class UserClass{
static allUsersStartingWithLetter(letter: string){
return this.find({...});
}
fullName(this: IUser){
return `${this.firstName} ${this.lastName}`
}
}
userSchema.loadClass(UserClass);
const User = mongoose.model<IUser>('User', userSchema);
export default User;
Run Code Online (Sandbox Code Playgroud)
我的目标是 TypeScript 能够理解:
User有一个方法allUsersStartingWithLetterUser实例有一个方法fullName在当前配置中没有。我自己无法完成它。
Sam*_*NET -1
您的UserClass需求Model从mongoose. 您似乎缺少一些必要的代码来使这项工作适合您。
从您作为参考共享的链接中,这里有一个指南,可以通过完整的代码示例解决您的问题。
| 归档时间: |
|
| 查看次数: |
2343 次 |
| 最近记录: |