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

扩展FastifyContext添加token字段遇类型错误,求排查解决

问题排查与解决

你的问题主要出在两个地方:

1. 类型文件目录拼写错误

你创建的类型文件路径是src/@types/fatify/index.d.ts,但模块声明写的是declare module 'fastify',目录名拼写错误(fatify → fastify),导致TypeScript无法识别这个扩展模块。

修正方法:
将src/@types/fatify目录重命名为src/@types/fastify,确保目录名和模块声明的名称一致。

2. tsconfig.json的typeRoots配置缺失默认类型目录

你只指定了"typeRoots": ["src/@types"],这会覆盖TypeScript默认的node_modules/@types类型目录,导致Fastify本身的基础类型无法被加载,你的扩展自然也无法生效。

修正方法:
在typeRoots中添加默认的类型目录:

{
  "compilerOptions": {
     ...
     "typeRoots": ["src/@types", "node_modules/@types"],
     ...
  }
}

验证修正

完成上述修改后,重新编译代码,request.context.token的类型错误应该会消失。如果还有问题,可以尝试:

  • 重启TypeScript语言服务(VS Code中可以按Ctrl+Shift+P选择"TypeScript: Restart TS Server")
  • 确保你的index.d.ts文件是有效的TypeScript模块(文件仅包含模块声明时无需额外导出,保证无语法错误即可)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 12:07:11