如何在 NestJS 中修复 "can not fin'd bcrypt"?

How to fix "can not fin'd bcrypt" in NestJS?

正如在此 中所发现的,以下内容可能是一种将密码加密为散列的方法:

  @BeforeInsert() async hashPassword() {
    this.password = await bcrypt.hash(this.password, Number(process.env.HASH_SALT));
  }

然而,虽然我已经安装了“bcrypt”和“types/bcrypt”,但它无法被 NodeJS 找到:

src/entities/user.entity.ts:50:27 - error TS2552: Cannot find name 'bcrypt'. Did you mean 'crypto'?

在我的 package.json 中,以下行显示 bcrypt 已成功安装:

"@types/bcrypt": "^5.0.0",
"bcrypt": "^5.0.1",

如何解决这个问题?

像这样在您使用它的文件中导入 bcrypt:

import * as bcrypt from 'bcrypt';