You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS Code中运行Node.js出现Uncaught ReferenceError: require is not defined报错

报错 Uncaught ReferenceError: require is not defined 解决方案

报错原因

require 是 Node.js 专属的 CommonJS 模块加载语法,浏览器环境原生不支持该语法。你此前编码没有报错,是因为之前的代码都运行在 Node.js 环境(比如 json-server 的服务端自定义脚本),本次报错说明你当前的 JS 文件是在浏览器环境下加载执行的,或是 Node.js 环境的模块规范被修改为 ESModule 模式。

对应解决方案

  • 如果你当前的 JS 文件仍需在 Node.js 环境运行(服务端脚本):
    1. 检查项目根目录的 package.json 文件,是否新增了 "type": "module" 配置,该配置会强制 Node.js 使用 ESModule 规范,此时需要把导入代码修改为 import lodash from 'lodash'
    2. 确认你执行脚本的方式为 node 你的脚本文件名.js,而非直接将 JS 文件引入 HTML 页面在浏览器打开
  • 如果你当前的 JS 文件需要在浏览器环境运行:
    1. 改用 ESModule 导入语法:在 HTML 引入该 JS 的 <script> 标签上添加 type="module" 属性,同时把导入代码修改为 import lodash from 'lodash',如果没有打包工具,可直接导入公开的 lodash ESModule 格式资源
    2. 直接引入 UMD 格式的 lodash 包:在 HTML 中提前引入 lodash 的 UMD 资源,不需要额外写导入语句,直接在代码中调用全局暴露的 _ 对象即可
    3. 接入 vite、webpack 等前端打包工具,打包工具会自动转换 require 语法、整合依赖资源,输出浏览器可正常执行的产物文件

内容的提问来源于stack exchange,提问作者rupiman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 13:09:03