Typescript with Nodejs app.use 需要中间件功能

编程入门 行业动态 更新时间:2024-10-05 15:35:11

Typescript with Nodejs app.use 需要<a href=https://www.elefans.com/category/jswz/34/1771157.html style=中间件功能"/>

Typescript with Nodejs app.use 需要中间件功能

剧情简介

我正在尝试将 TypeScript 用于带有 NodeJS 的项目,以帮助简化开发。然而,我遇到了几个问题我无法弄清楚打字稿编译器似乎有问题

问题

所以在主文件中

server.js
我导入了服务器使用的路由,像这样:

// Define Routes
app.use("/api/v1",(req: Request, res: Response, next: NextFunction) => apiV1Routes(req, res, next));

apiV1Routes
的内部只是创建一个
Router
实例的一般调用,并返回它 就像我在这里所做的那样:

import express, { Router, Request, Response, NextFunction } from "express";

export default (req: Request, res: Response, next: NextFunction) => {
  const router = Router();

  router.get("/test", (req: Request, res: Response) => {
    res.send("API is running");
  });

  return router;
}

我试过了

所以虽然这些看起来不正常,但这是我正在测试的,试图让它工作,原始代码非常相似,只是做了一些小改动

原码

sever.ts

app.use('/api/v1', apiV1Routes);

apiV1Routes

import express from 'express'
const router = express.Router()

export default router;

上面我在 vanilla js 中使用过很多次,但是我似乎无法让它在

.ts
文件中以其他方式工作,它不断抛出一个错误
app.use() requires a middleware function
但我似乎无法弄清楚如何实现它就目前而言,我已经检查了几篇关于
SO
错误的
app.use()....
文章,所有这些都不是特别特别的,因为大多数都没有正确导出。但是,我相信我正确地导出了路由器,因为我之前在不同的项目中使用过这种语法。

回答如下:

更多推荐

Typescript with Nodejs app.use 需要中间件功能

本文发布于:2024-05-30 07:20:02,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1770248.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:中间件   功能   Typescript   Nodejs   app

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!