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

Angular 18 Karma测试中SVG文件加载器配置问题求助

解决Angular 18测试环境SVG加载失败问题

你的应用构建阶段已经通过loader配置让SVG以文本形式加载,但测试环境使用独立的构建配置,未同步该规则,导致测试时解析SVG失败。按以下步骤修复:

1. 给测试环境添加SVG Loader配置

打开angular.json,定位到项目的test构建配置节点(路径:projects -> [你的项目名称] -> architect -> test),在options中添加与应用构建一致的loader配置:

"test": {
  "builder": "@angular-devkit/build-angular:karma",
  "options": {
    // 保留原有配置(如tsConfig、polyfills等)
    "loader": {
      ".svg": "text"
    }
  }
}

2. 确保TypeScript识别SVG模块

如果测试用的tsconfig.spec.json未包含SVG类型声明,需补充:

  • 在项目src目录下创建svg.d.ts文件,内容如下:
declare module "*.svg" {
  const content: string;
  export default content;
}
  • 确认tsconfig.spec.json的include字段覆盖了该类型文件:
"include": [
  "src/**/*.spec.ts",
  "src/**/*.d.ts"
]

3. 重启测试服务

关闭当前运行的ng test进程,重新执行ng test,即可解决SVG加载报错问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 22:52:08