为了账号安全,请及时绑定邮箱和手机立即绑定

节点: 引用错误: 要求未定义

节点: 引用错误: 要求未定义

ABOUTYOU 2022-09-29 10:23:37
源代码是:const Sequelize = require('sequelize');const sequelize = new Sequelize(process.env["DSN"]);当试图通过节点执行时(我坚持,我不是试图在我的浏览器中执行此代码),我得到:$ node Sequelize.jsfile:///Users/snwfdhmp/project/Sequelize.js:1const Sequelize = require('sequelize');                  ^ReferenceError: require is not defined    at file:///Users/snwfdhmp/project/Sequelize.js:1:19    at ModuleJob.run (internal/modules/esm/module_job.js:138:23)    at async Loader.import (internal/modules/esm/loader.js:178:24)为什么会发生这种情况?互联网上的每篇文章都说“不要在浏览器中使用 require()”,但我没有使用浏览器。我在 macOS 10.15.5 上使用节点 v14.4.0。
查看完整描述

1 回答

?
翻过高山走不出你

TA贡献1875条经验 获得超3个赞

如果您在包.json 中定义了它,则应将其删除。"type": "module"


原因是,某些 CommonJS 变量在 ES 模块(参考)中不可用,它们是:


require

exports

module.exports

__filename

__dirname

但是,可以使用模块导入到 ES 模块中。require


查看完整回答
反对 回复 2022-09-29
  • 1 回答
  • 0 关注
  • 66 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信