正如在这个 https://stackoverflow.com/questions/61269160/how-to-use-bcrypt-module-to-save-encrypted-password-in-mongodb-using-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 - 错误 TS2552:找不到名称“bcrypt”。您指的是“加密货币”吗?
在我的 package.json 中,以下几行显示 bcrypt 已成功安装:
"@types/bcrypt": "^5.0.0",
"bcrypt": "^5.0.1",
如何解决这个问题?
回答1
在您使用它的文件上导入 bcrypt,如下所示:
import * as bcrypt from 'bcrypt';