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

后端开发报错:TypeError: Service is not a constructor 求助

解决「TypeError: Service is not a constructor」错误

以下是排查和解决这个问题的几个关键方向:

  • 检查模块导入路径
    controllers.js里的require("../../Service")大概率路径不正确。你需要对照实际目录结构确认路径:

    • 比如如果目录结构是:
      project/
      ├── Service.js
      └── src/
          └── controllers/
              └── controllers.js
      
      正确路径应该是require("../../Service.js")(加上.js后缀能避免Node.js模块解析歧义)。
    • 可以先在controllers.js里打印导入结果验证:
      const Service = require("../../Service");
      console.log(Service); // 若输出不是类结构,说明路径指向错误文件
      
  • 确认导出逻辑无冲突
    你的Service.js导出语句module.exports = Service;是正确的,但要确保文件里没有其他module.exports语句覆盖这个导出,也没有混用ES6的export default语法(当前用的是CommonJS规范)。

  • 核对文件名大小写
    在Linux/macOS环境下文件名区分大小写,如果实际文件是service.js但你导入写的是Service,会导致加载错误的模块(甚至空对象),进而触发构造函数错误。确保导入的文件名和实际文件名完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 21:55:14