在服务器上找不到模块“../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
中删除整个项目
我可以在我的本地机器上正常启动我的节点应用程序,但是如果我然后从我的服务器上的 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
中删除整个项目