常规快递代码上的打字稿错误 TS2345
Posted
技术标签:
【中文标题】常规快递代码上的打字稿错误 TS2345【英文标题】:Typescript error TS2345 on regular express code 【发布时间】:2017-03-29 17:19:26 【问题描述】:我已经使用 typescript 1.8.10 和此代码安装了 express typings:
app.use( function( err, req, res, next )
if ( err.code !== 'EBADCSRFTOKEN' )
return next( err )
// handle CSRF token errors here
res.status( 403 )
res.send( 'form tampered with' )
)
这是一个捕获 csrf 错误的中间件代码会产生这些错误:
错误:(130, 10) TS2345: 类型参数 '(err: Request, req: 响应,res: NextFunction, next: any) => any' 不可分配给 'string | 类型的参数正则表达式 | (字符串|正则表达式)[]'。类型 '(err:请求,req:响应,res:NextFunction,next:any)=> any' 不能分配给类型 '(string | RegExp)[]'。财产 '[Symbol.iterator]' 在类型'(err: Request, req: Response, res: NextFunction, next: any) => any'。
错误:(131, 14) TS2339: 类型上不存在属性“代码” '请求'。
错误:(136, 9) TS2339: 类型上不存在属性“状态” '下一个函数'。
错误:(137, 9) TS2339: 类型上不存在属性“发送” '下一个函数'。
如何预防?
【问题讨论】:
【参考方案1】:这似乎是您的类型的问题,因此请确保您运行 npm install
以确保您拥有所有正确的依赖项。
【讨论】:
以上是关于常规快递代码上的打字稿错误 TS2345的主要内容,如果未能解决你的问题,请参考以下文章
打字稿错误 TS2345 错误:TS2345:“缓冲区”类型的参数不可分配给“字符串”类型的参数
如何在较新版本的打字稿中处理打字稿错误 Object.ts (7053)?