在我的项目中,我使用grunt根据各个svg文件/图形生成svg精灵表。为此,我正在使用名为' grunt-svg-sprite'的咕噜声。
我的第一个问题是:是否可以将属性(例如ID或preserveAspectRation属性)添加到此生成的精灵的根元素中? grunt-svg-sprite是否可以选择执行此类操作?阅读文档并没有帮助我。
或者我尝试使用grunt-execute向gruntfile添加任务。生成svg sprite后立即运行此任务。我的想法是调用外部javascript来插入属性,类似于:
Gruntfile.js
execute: {
target: {
src: ['svgsprite_script.js']
}
}
svgsprite_script.js
var root = document.documentElement;
root.setAttribute('preserveAspectRatio', 'none');
我应该以某种方式指定要修改的文件?上面的代码引发了关于'文档'的错误没有被定义。
如果有办法,为生成的svg文件添加属性的最佳方法是什么?或者更确切地说:我如何添加' perserveAspectRatio'属于使用' grunt-svg-sprite生成的svg sprite'?
提前致谢。
答案 0 :(得分:0)
您可以使用cheerio加载svgsprite文件。它为您提供了一个类似于文档界面的jquery,您可以使用它来以多种方式更改文档...包括添加ID