我正在尝试在我的 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。
我该如何修复它?谢谢
尝试使用以下选项:
npm i bcryptjs @types/bcryptjs
然后添加以下行
import { hash, compare } from 'bcryptjs';
确保您的
"allowSyntheticDefaultImports"
文件中的 "true"
设置为 tsconfig.json
尝试运行命令
npm i --save-dev @types/bcryptjs
或者 yarn add --dev @types/bcryptjs
如果您使用纱线来获取此模块的类型定义。
我也有类似的问题。 为了解决这个问题,我首先做了:
yarn add bcryptjs @types/bcryptjs
然后在导入 bcrypt 时删除花括号。所以,而不是:
import { bcrypt } from 'bcryptjs';
我做到了:
import bcrypt from 'bcryptjs';
跑步
npm i --save-dev @types/bcryptjs
使导入错误消失..
#首先在根文件夹中运行
如果您使用的是 Visual Studio Code,请尝试重新加载项目或重新启动 TypeScript 服务器。如果通过
安装该类型,该错误应该会消失npm i --save-dev @types/bcryptjs