找不到模块'/型号/用户';服务器上的Node.js
我可以在本地计算机上启动我的节点应用程序,但如果我从服务器上的github中提取项目并使用找不到模块'/型号/用户';服务器上的Node.js,node.js,typescript,npm,node-modules,ts-node,Node.js,Typescript,Npm,Node Modules,Ts Node,我可以在本地计算机上启动我的节点应用程序,但如果我从服务器上的github中提取项目并使用npm start启动,则会出现以下错误: 找不到模块“../models/user” 导入用户=需要('../models/User') registrationController.ts正在尝试访问型号/用户 以下是我在该文件中导入的方式: import User = require('../models/user'); 这是我的文件夹结构。我在突出显示的文件中得到错误: 这是我的npm开始脚本:
npm start
启动,则会出现以下错误:
找不到模块“../models/user”
导入用户=需要('../models/User')
registrationController.ts正在尝试访问型号/用户
以下是我在该文件中导入的方式:
import User = require('../models/user');
这是我的文件夹结构。我在突出显示的文件中得到错误:
这是我的npm开始
脚本:
“脚本”:{
“开始”:“nodemon--watch'*.ts'--exec'ts node'app.ts”
}
这不是将用户模型用于控制器的正确语法,您应该将所需模型直接分配给变量(常量或变量),如下所示:
const User = require('../models/user');
这篇文章详细介绍了这两种方法(导入和请求)。它看起来像是将es6语法与旧语法混合在一起 如果要将该模块导出为默认导出,请使用此方法
import User from '../models/user';
否则使用
const User = require('../models/user')
确保您是这样导出模块的
module.exports = <Your Module>
module.exports=
我的文件名是bitbucket上的User.ts,而不是User.ts
我以前用user.ts将它推到了bitbucket,但是文件名在那里没有改变!!!所以我不得不从bitbucket中删除整个项目什么文件试图访问
模型/用户
?你能给我们看一下它的代码以及它在目录中的位置吗?registrationController.ts正在尝试访问它。我更新了问题您是否在github或其他地方将此标记为“发布”?我认为应该是import User from'../models/User'代码>或const User=require('../models/User')代码>。假设user.ts
有一个默认的export,则无法解决问题@kaleidawavedoesn无法解决问题unfortunately@jsbeginnerNodeJS希望您从用户模型导出模块。我的文件名是bitbucket上的user.ts,而不是user.ts。我以前使用user.ts将其推送到bitbucket,但文件名在那里没有更改!!!所以我不得不从bitbucketOk删除整个项目,但根据你的问题,我认为我的答案是正确的:)