TypeScript 引入图片等资源文件报错的解决方法
在 TypeScript 项目中直接引用图片等非代码资源文件时,编辑器通常会提示找不到模块。本文介绍通过创建 global.d.ts 文件并使用 declare module 语法声明文件类型,使 TypeScript 编译器能够正确识别并处理这些资源文件。
TypeScript 引入资源文件报错原因
在 TSX 文件中直接引用图片时,代码编辑器往往会报错,提示无法找到该引用。

TypeScript 默认无法识别非代码类型的文件(JavaScript 中通常可以正常引用)。若要在 TypeScript 中正确使用此类资源,需先声明其类型。
创建类型声明文件
新建一个 TypeScript 声明文件,例如 global.d.ts(.d.ts 代表 TypeScript declaration file,即类型声明文件),并将其放置在项目的主要代码文件夹中。

在该声明文件中,添加对各种文件类型的模块声明,具体示例如下:
声明文件的具体写法
declare module '*.svg' {
interface Svg {
content: string;
id: string;
viewBox: string;
node: any;
}
const svg: Svg;
export default svg;
}
declare module '*.png' {
const png: string;
export default png;
}
declare module '*.mp3' {
const mp3: string;
export default mp3;
}
declare module '*.gif' {
const png: string;
export default png;
}
简化声明方式
如果只需要处理图片,也可以简化为 declare module '*.png'; 的形式。
编译识别机制
项目编译时,TypeScript 会自动读取这些声明文件的内容,从而实现对资源文件的类型识别。
至此,关于解决 TypeScript 引用资源文件后提示找不到的异常处理方法已介绍完毕。如需了解更多相关 TypeScript 内容,请搜索本站历史文章或继续浏览后续文章,感谢支持。
5款主流JS在线运行工具对比:CodePen、JSFiddle与StackBlitz怎么选
2026-11-05 17:04:04
JavaScript入门书籍避坑:这些书不适合初学者
2026-11-05 16:31:15
JS使用Math.round实现保留两位小数的原理与代码
2026-11-05 15:35:55
JavaScript 原生 Date 对象怎么实现日期加减
2026-11-05 14:30:00
JavaScript函数定义的三种方式:声明、表达式与箭头函数
2026-11-05 13:50:55








