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

如何配置Vite项目使VSCode识别"?worker"格式的Web Worker导入?

解决Vite中Web Worker导入的TypeScript类型错误

直接按以下步骤配置即可:

  • 在项目的src目录或者根目录下创建(或编辑)一个名为vite-env.d.ts的类型声明文件
  • 在文件中添加以下代码,为Vite的Web Worker导入后缀声明类型:
declare module '*?worker' {
  class WebWorker extends Worker {
    constructor();
  }

  export default WebWorker;
}

// 如果你还用到了内联Worker的写法(?worker&inline),可以补充下面这段
declare module '*?worker&inline' {
  class WebWorker extends Worker {
    constructor();
  }

  export default WebWorker;
}
  • 打开tsconfig.json,确认include数组里包含了这个声明文件的路径,比如:
{
  "compilerOptions": {
    // 保留你原有的编译配置
  },
  "include": [
    "src/**/*",
    "vite-env.d.ts" // 确保这个路径和你的文件位置匹配
  ]
}

原理很简单:Vite的?worker是自定义的导入后缀,TypeScript本身不认识这种模块格式,所以需要手动添加类型声明,告诉TS这类模块导出的是一个继承自原生Worker的类,这样VSCode就能正确识别导入语法,不会再标红报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 06:45:53