Javascript 在nodejs的typescript类中使用路由器对象时发生异常

Javascript 在nodejs的typescript类中使用路由器对象时发生异常,javascript,node.js,typescript,express,routing,Javascript,Node.js,Typescript,Express,Routing,我有一个typescript中的nodejs服务。我试图在应用程序中设置一个单独的路由层 我有一个app.js文件,其中 let IndividualRoute= require('./routing/IndividualRoute'); app.use('/users', IndividualRoute); 我已经创建了一个IndividualRoute.ts文件,我试图在其中使用路由器对象,如下所示 import express = require('express'); import i

我有一个typescript中的nodejs服务。我试图在应用程序中设置一个单独的路由层

我有一个app.js文件,其中

let IndividualRoute= require('./routing/IndividualRoute');
app.use('/users', IndividualRoute);
我已经创建了一个IndividualRoute.ts文件,我试图在其中使用路由器对象,如下所示

import express = require('express');
import individualValidation from '../users/IndividualValidation';
let router = express.Router();

class IndividualRoute {
         router.get('/individualList', individualValidation.list);
}

export = IndividualRoute;
当我尝试执行上述操作时,我得到以下异常

我尝试了以下方法

router.get('/individualList', (request, response) => {
        response.send('Hello world!');
});
但我也有同样的问题。另外,如果我删除了这个类,并且有一个没有类的简单文件,那么我不会得到这个异常

基本上,我想做的是,如果路由匹配,它应该命中IndividualValidation文件中的相应函数,如下面的例子所示

router.get('/individualList', individualValidation.list);
如果路由是users/individualList,则应使用请求数据点击individualValidation.list函数。基本上,我正在尝试做下面链接中标记为答案的事情


任何关于我做错了什么的建议。

你在写一节课。在类中,放置构造函数和方法。您不能在这里直接编写代码。您编写的行需要位于构造函数或方法中

class IndividualRoute {
      constructor(){
         router.get('/individualList', individualValidation.list);
      }
}

IndividualRoute.ts
中,请进行以下更改:

从“express”导入{Router};
从“../users/individualValidation”导入individualValidation;
让路由器=路由器();
get('/individualList',individualValidation.list);
导出默认路由器;
另外,如果使用typescript,为什么要使用app.js?我建议对该文件也使用typescript。另一个建议是在
路由
文件夹中设置index.ts,其中包含以下代码:

从express导入{Router};
从“/IndividualRoute”导入IndividualRoute;
让路由器=路由器();
路由器。使用(“/users”,IndividualRoute);//为每个单独的路线设置此选项
/*
*例如。
*使用(“/auth”,auth);
*/
导出默认路由器;
因此,在你的
app.ts
中,你所要做的就是:

从“express”导入*为express;
从“/routing”导入路由;
设app=express();
应用程序使用(路线);
//其他代码

我希望这对你有帮助

在对app.ts进行更改后,我在等待删除错误时遇到以下错误:找不到模块“/routing”。因此,要明确,在根文件夹中,您有文件app.ts、文件夹路由,而在文件夹路由中,您有文件index.ts?