除了 Http/fetch 之外,有没有办法以角度读取放置在资产文件夹下的 svg 文件的内容?

Posted

技术标签:

【中文标题】除了 Http/fetch 之外,有没有办法以角度读取放置在资产文件夹下的 svg 文件的内容?【英文标题】:Is there any way to read the contents of svg file placed under asset folder in angular other than Http/fetch? 【发布时间】:2022-01-08 17:07:27 【问题描述】:

我正在尝试获取 .svg 文件的内容,该文件位于 angular cli 项目中的 /assets/image 下。

例如:

 /assets/image/1.svg
 /assets/image/2.svg

我无法使用“fs”模块,因为浏览器不支持节点原生 fs 模块。使用 http 我们可以实现这一点,但由于有 1000 个图标,这将是非常昂贵的操作。

我正在寻找一种将 .svg 的内容导入角度组件的有效方法。

角度版本:9

【问题讨论】:

【参考方案1】:

除了使用 HttpClient 之外别无他法。如果您有许多 svg 文件,您可以将它们合并到一个 svg 资产中,并仅使用 HttpClient 下载这个。效率会更高。

在这里您可以找到一个很好的 Angular 组件,如何将 SVG 文件合并到单个 spritesheet 中并在您的应用程序中使用它 - https://github.com/jannicz/ng-svg-icon-sprite

【讨论】:

以上是关于除了 Http/fetch 之外,有没有办法以角度读取放置在资产文件夹下的 svg 文件的内容?的主要内容,如果未能解决你的问题,请参考以下文章

除了使用临时表之外,有没有办法在单独的步骤中过滤/排序?

除了尝试捕获或承诺拒绝之外,有没有办法处理量角器的预期条件?

除了在 Spring Boot 应用程序的 bootstrap.properties 中指定之外,有没有办法为 Slueth 提供 Spring 应用程序名称?

有没有办法为“除第一个/最后一个之外的所有元素”指定CSS简写?

有没有办法以角度刷新剑道网格?

如何配置插件以将除 priv/static/ 之外的另一个目录设置为公共目录?