我正在开发Angular应用,并且试图找出处理SVG的最佳方法:
-
将它们用作背景图像,img标签的src属性等。-我无法使用CSS设置SVG样式。另一方面,它非常易于使用,我不必复制/粘贴内容
-
使用第三方应用程序向我们发出请求,并将SVG放入具有指令的容器内-例如https://www.npmjs.com/package/ng-inline-svg-它发出我要避免的HTTP请求。但是,我可以使用CSS设置图像的样式
-
将SVG直接放置在组件模板内-不会发出其他任何请求,并且我可以完全控制样式。但这会降低代码的可重用性。
我想完全避免HTTP请求的原因是因为我们有多个主题(相同的SVG,但颜色不同),并且我希望每个“图像”最多加载一个资源。
我可以使用任何好的做法吗?我可以看的任何开放源代码吗?
第三个选项还好吗?也许我可以编写Angular服务并以某种方式对内联SVG进行分组,但是目前我还没有任何想法。
亲切的问候, 马辛