如何在 NodeJS 中使用 ES6 的 bcryptjs 库?

问题描述 投票:0回答:5

我正在尝试在我的 React 项目中使用

bcryptjs
包。我收到以下错误:

Could not find a declaration file for module 'bcryptjs'. ‘…/node_modules/bcryptjs/index.js' 
implicitly has an 'any' type.
Try `npm i --save-dev @types/bcryptjs` if it exists or add a new declaration (.d.ts)
file containing `declare module 'bcryptjs';`

运行

npm i --save-dev @types/bcryptjs
使导入错误消失,但是当我尝试使用包中的变量时,找不到它们。

NodeJS版本是node

v16.17.0
并且也使用TS。

我该如何修复它?谢谢

javascript node.js reactjs typescript bcrypt
5个回答
4
投票

尝试使用以下选项:

npm i bcryptjs @types/bcryptjs

然后添加以下行

import { hash, compare } from 'bcryptjs';

确保您的

"allowSyntheticDefaultImports"
文件中的
"true"
设置为
tsconfig.json


2
投票

尝试运行命令

npm i --save-dev @types/bcryptjs
或者
yarn add --dev @types/bcryptjs
如果您使用纱线来获取此模块的类型定义。


-1
投票

我也有类似的问题。 为了解决这个问题,我首先做了:

yarn add bcryptjs @types/bcryptjs

然后在导入 bcrypt 时删除花括号。所以,而不是:

import { bcrypt } from 'bcryptjs';

我做到了:

import bcrypt from 'bcryptjs';

-1
投票

跑步

npm i --save-dev @types/bcryptjs

使导入错误消失..

#首先在根文件夹中运行


-1
投票

如果您使用的是 Visual Studio Code,请尝试重新加载项目或重新启动 TypeScript 服务器。如果通过

安装该类型,该错误应该会消失
npm i --save-dev @types/bcryptjs

Image: typescript: reload project

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.