gpt4 book ai didi

typescript - 如何使用 TypeScript 在 express 中输入 `request.query`?

转载 作者:行者123 更新时间:2023-12-04 04:25:48 25 4
gpt4 key购买 nike

我正在运行 express.js使用 TypeScript 的应用程序。
每次我尝试处理 request.query.foo我收到以下错误:

Argument of type 'string | ParsedQs | string[] | ParsedQs[] | undefined' is not assignable to parameter of type 'string'.
Type 'undefined' is not assignable to type 'string'.
设置:
import { Request, Response, Router } from 'express';

const router = Router();

function getHandler(request: Request, response: Response) {
const { query } = request;

query.foo; // string | QueryString.ParsedQs | string[] | QueryString.ParsedQs[] | undefined

}

router.route('/')
.get(getHandler)
是否有正确的方法输入 request.query没有类型转换?

最佳答案

解决方案是按以下方式使用泛型。

const router = Router();

interface Foo {
foo: string;
}

function getHandler(request: Request<{}, {}, {}, Foo>, response: Response) {
const { query } = request;

query.foo;

}

router.route('/')
.get(getHandler)

关于typescript - 如何使用 TypeScript 在 express 中输入 `request.query`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63538665/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com