node.js - 如何在 NodeJS 中导入 "crypto"系统库,因为它突然未定义?

标签 node.js nestjs cryptojs

我从 2021 年更新了一个基于 NestJS 的项目,其中包含如下导入:

import crypto from 'crypto';

现在,在 Node 18 中,加密 尚未定义。

这个库发生了什么,有可用的替代品吗?根据NodeJS documentation ,这实际上不应该被删除。

最佳答案

您可以尝试通过 node:crypto 导入。 node:命名空间是 ESM 的新功能。如果这不是 ESM 项目而只是 NestJS + Typescript,那么您可以尝试 import * as crypto from 'crypto'或尝试设置syntheticDefaultImports: truetsconfig 。请注意,如果 esModuleInterop 则该设置已设置为 true设置为true

关于node.js - 如何在 NodeJS 中导入 "crypto"系统库,因为它突然未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76133634/

相关文章:

javascript - npm cache clean v/s npm cache verify

node.js - 打字机。通过日期查询时仅使用日期部分并排除时间戳部分

javascript - 在magento中使用自定义模块添加js文件后,结帐页面无法正常工作

php - 如何解密使用 JSEncrypt 加密的 PHP 中的数据

node.js - child_process 方法在 Electron 上很慢

node.js - 你能定义任务优先级吗?

node.js - NestJS 初创公司的开发速度慢得令人难以置信

nestjs - 接受Nest.js中的表单数据

javascript - 为什么digest和digest ('hex')会产生不同的输出?

node.js - 在 Heroku 中部署时,Google 回调 url 返回 400