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

Angular库构建报TS2339错误:Window无customFunction属性求助

解决Angular库构建时Window扩展类型不识别的TS2339错误

问题根源

VSCode能识别自定义的Window类型扩展,但Angular库构建时使用的是库专属的tsconfig.lib.json配置,默认不会自动包含你新增的.d.ts类型文件,导致TypeScript编译时无法找到customFunction的类型定义。

修复步骤

  1. 更新库的TypeScript配置文件
    打开projects/lib-test/tsconfig.lib.json,在include数组中添加自定义类型文件的路径:

    {
      "include": [
        "src/**/*.ts",
        "src/types/window.d.ts"
      ]
    }
    

    若需要批量包含types目录下的所有类型文件,可改为:

    "include": [
      "src/**/*.ts",
      "src/types/**/*.d.ts"
    ]
    
  2. 确认类型文件的模块声明正确
    你的window.d.ts中已经包含export {};,这是声明全局接口的必要条件(将文件转为模块),无需修改。

  3. 重新执行构建命令
    运行ng build lib-test,此时TypeScript编译器会正确识别扩展的Window类型,报错将消失。

额外检查项

  • 核对tsconfig.lib.json的compilerOptions.types字段:若该字段有值,确保未排除全局类型;若为空,不影响,因为include已覆盖自定义类型文件。
  • 确认window.d.ts的路径、文件名大小写与实际文件一致(Linux/macOS环境对大小写敏感)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 11:12:05