You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NestJS文件上传报错:Type<NestInterceptor>无法赋值给NestInterceptor|Function

NestJS FileInterceptor 类型错误解决方案

这个红线错误的核心原因是:FileInterceptor是拦截器工厂函数,不是直接的拦截器类,你直接将类本身传给@UseInterceptors装饰器,而装饰器要求传入的是拦截器实例或可返回实例的函数,类型不匹配导致报错。

解决步骤:

  • 调用FileInterceptor时必须传入上传文件对应的字段名(比如前端表单里的文件字段叫file),生成实际的拦截器实例后再传给装饰器。
  • 示例修正代码:
    // 错误写法(直接传类)
    @UseInterceptors(FileInterceptor) 
    
    // 正确写法(调用工厂函数生成实例)
    @UseInterceptors(FileInterceptor('file')) 
    

确认你导入的FileInterceptor确实来自@nestjs/platform-express,导入语句没问题的话,按上述方式调用工厂函数即可解决类型错误。

内容的提问来源于stack exchange,提问作者97_HYUN

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 15:14:51