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

Angular导入自定义字体失败:TS7016类型声明文件缺失求助

解决Angular导入自定义pdfmake字体文件的TS7016错误

方法1:创建类型声明文件

  • 在assets/fonts/目录下新建custom-fonts.d.ts文件,写入以下代码:
declare module '../../../assets/fonts/custom-fonts' {
  const content: any;
  export default content;
}

如果该目录下还有其他类似的JS字体文件,可以用更通用的匹配规则:

declare module '*.js' {
  const content: any;
  export default content;
}

保存文件后重启Angular开发服务器,TypeScript会自动识别该声明文件,错误即可消除。

方法2:修改tsconfig.json关闭隐式any检查

  • 打开项目根目录的tsconfig.json,找到compilerOptions中的noImplicitAny,将其值改为false:
{
  "compilerOptions": {
    // 其他配置项
    "noImplicitAny": false
  }
}

注意:此方法会关闭所有隐式any类型的检查,可能忽略其他潜在的类型问题,仅建议临时使用或在小型项目中采用。

方法3:使用require替代import

  • 将原导入代码替换为CommonJS的require语法:
const pdfFonts = require('../../../assets/fonts/custom-fonts');

TypeScript对require的类型检查更为宽松,不会触发该模块声明错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 16:04:59