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

Node.js运行app.js报错Uncaught ReferenceError: require未定义求助

解决Node.js中require is not defined错误

你看到的Uncaught ReferenceError是浏览器环境的错误提示,这说明你的app.js代码被浏览器加载执行了,而非Node.js服务端进程在运行它——哪怕你确实执行了node app.js启动服务器。

常见原因和解决办法:

  • 不要把服务端代码暴露给浏览器
    确认你的前端HTML里没有用<script src="app.js"></script>这类标签引入服务端的app.js文件。服务端代码由Node.js单独执行,前端交互逻辑要写在单独的文件(比如client.js)里,两者完全分离。

  • 检查静态资源配置
    如果你的Express服务器用了express.static中间件,比如:

    app.use(express.static(__dirname))
    

    而app.js正好在这个静态目录下,当浏览器请求对应路径时,服务器会把app.js作为静态文件返回,导致浏览器执行它时触发require未定义的错误。解决办法是把静态资源放到单独的子目录(比如public),然后配置:

    const path = require('path')
    app.use(express.static(path.join(__dirname, 'public')))
    
  • 前端模块化需求别混在服务端代码里
    如果你想在前端用模块化语法,别直接用服务端的require。可以用ES模块的import/export(给script标签加type="module"),或者用Webpack、Vite这类打包工具把前端代码转成浏览器兼容的格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 19:43:08