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

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

  

找不到模块'../ models / user'。

     
    

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

  

registrationController.ts 试图访问模型/用户

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

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

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

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

这是我的npm start脚本:

"scripts": {
   "start": "nodemon --watch '*.ts' --exec 'ts-node' app.ts"
}
agercaigao 回答:在服务器上找不到模块'../models/user'Node.js

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

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

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

,

似乎将es6语法与较旧的语法混合在一起

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

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

否则使用

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

确保您要导出的模块是这样的

module.exports = <Your Module>
,

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

我之前使用user.ts将其推送到了bitbucket,但文件名没有更改!!!所以我不得不从bitbucket中删除整个项目

本文链接:https://www.f2er.com/2871947.html

大家都在问