如何在TypeScript中将路由设置为旧的JavaScript函数?

时间:2018-04-10 10:00:48

标签: angular typescript express routing

我正在编写Angular应用程序。它是在没有TypeScript的情况下启动的,包含一些" legacy"用纯JavaScript编写的代码。

我们正在使用Express进行路由。 "旧" api.js文件定义了JS文件的路由,如下所示:

let express = require('express');
let router = express.Router();
let businessLogic = require('../app/handlers/logic');

router.options('/*', function (req, res, next) {
    res.send(200);
});

router.get('/helloworld',businessLogic.getHelloWorld);

现在,所有路由都在server.ts文件中定义。新功能已经用TypeScript编写,但我仍然需要能够使用旧的JavaScript函数。 如何定义到这些功能的路由? 我的server.ts文件包含以下内容:

import * as express from 'express';
import { NewLogicController } from './controllers/NewLogicController';

export class Server {
    constructor() {     
        let router: express.Router;
        router = express.Router();

        NewLogicController.addControllerRoutes(router);
    }
}

和控制器文件:

export class NewLogicController {
    public static addControllerRoutes(router: Router): void {
          router.get(
            '/api/hello',
            (req: Request, res: Response, next: NextFunction) => {
                new NewLogicController().helloworld(req, res, next);
            }
        );

0 个答案:

没有答案