财产'身体'类型'请求'上不存在

时间:2017-06-02 09:26:12

标签: node.js express typescript asp.net-web-api typescript-typings

请求类型的 req 变量对于 body 属性没有 intellisense 。这是由于打字吗?

import { Request, Response } from 'express'
import { ok, bad } from './responses'

export const signIn: async (req: Request, res: Response) => {
    try {
        const { name, pword } = req.body // body is not recognized
        const data = auth.signIn(name, password)
        ok(res, data)
    } catch (error) {
        bad(res, error)
    }
}

2 个答案:

答案 0 :(得分:1)

body-parser已从express 4移至单独的项目中, 所以不会有关于它的任何类型定义。

我这样使用它:

import * as bodyParser from 'body-parser';

let router: Router = express.Router();
router.use(bodyParser.text());

(req: Request, res: Response) => {
    let address = req['body'];
}

答案 1 :(得分:0)

而不是

typings install express --save-dev

我做了

npm install @typings/express --save-dev

它给了我' req.body'