Mongoose钩子不使用Typescript

时间:2017-09-12 18:02:01

标签: typescript mongoose

所以有人知道为什么我在使用mongoose hook并引用this时可能会收到Typescript错误。我没有使用箭头函数,我知道词法范围问题,但即使使用这样的匿名函数:

UserSchema.pre("save", function(next) {
    console.log(this.password);
    next();
});

确切的错误消息是

'this' implicitly has type 'any' because it does not have a type annotation.

任何人都知道怎么解决这个问题?

BTW我使用的是Typescript 2.5.2 / NodeJS 8.2.1

谢谢!

1 个答案:

答案 0 :(得分:3)

试试这个:

schema.pre("save", function(this: UserModel, next: any) {
  console.log(this.password);
  next();
});

我认为你得到了错误,因为你可能有一个打字机配置来检查隐含的任何错误。如果您输入' '在钩子函数的参数中,应该解决错误。