在服务器上找不到模块“../models/user”Node.js

Cannot find module '../models/user' Node.js on Server

我可以在我的本地机器上正常启动我的节点应用程序,但是如果我然后从我的服务器上的 github 中提取项目并使用 npm start 启动它,我会收到此错误:

Cannot find module '../models/user'.

import User = require('../models/user');

registrationController.ts 正在尝试访问 models/user.

这是我导入该文件的方式:

import User = require('../models/user');

这是我的文件夹结构。我在突出显示的文件中收到错误:

这是我的 npm start 脚本:

"scripts": {
   "start": "nodemon --watch '*.ts' --exec 'ts-node' app.ts"
}

这不是在控制器中使用用户模型的正确语法,您应该将所需的模型直接分配给变量(const 或 var),如下所示:

const User = require('../models/user');

这篇 详细介绍了两种方式(导入和要求)。

看起来像是将 es6 语法与旧语法混合使用

如果您将该模块导出为默认导出,请使用这种方式

import User from '../models/user'; 

否则使用

const User = require('../models/user')

确保你正在像这样导出模块

module.exports = <Your Module>

我的文件名在 bitbucket 上是 User.ts 而不是 user.ts

我之前用 user.ts 将它推送到 bitbucket,但那里的文件名没有改变!!!所以我不得不从 bitbucket

中删除整个项目