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

如何配置VSCode的ESLint使HTML中的JS支持typeRoots类型?

解决HTML内JavaScript无法识别WebGPU类型的问题

以下是几个可行的配置方案,按优先级排序:

1. 调整jsconfig.json的文件包含范围

修改jsconfig.json的include字段,明确指定HTML文件,确保VSCode的语言服务将其纳入类型检查范围:

{
  "compilerOptions": {
    // 保留原有配置
    "target": "ESNext",
    "lib": ["dom", "dom.iterable", "esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "typeRoots": ["./node_modules/@webgpu/types", "./node_modules/@types"]
  },
  "include": [
    "build/**/*",
    "**/*.js",
    "**/*.html",
    ".eslintrc.js"
  ]
}

2. 配置VSCode启用HTML内的JavaScript类型支持

在VSCode的用户设置(settings.json)中添加以下配置,确保HTML语言服务能读取jsconfig的类型配置:

{
  "html.javascript.enabled": true,
  "javascript.preferences.includeAutomaticTypeAcquisition": true
}

3. 验证ESLint配置的有效性

确保eslint-plugin-html和@typescript-eslint/parser的配置正确覆盖HTML文件:

  • 确认parserOptions.extraFileExtensions已包含.html
  • 执行npm install @webgpu/types --save-dev,确保类型包已正确安装

4. 兜底:手动添加类型引用注释

如果上述配置仍未生效,可在HTML的<script>标签开头添加类型引用注释,强制加载WebGPU类型:

<script>
/// <reference types="@webgpu/types" />
// 此处的WebGPU API将获得类型提示
const adapter = await navigator.gpu.requestAdapter();
const device = await adapter.requestDevice();
</script>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 12:35:09