我想要一些使用xml命名空间属性与角度的输入。
问题是angular带有几个指令来处理写入属性,如href和src当angular解析的表达式(否则浏览器将尝试加载{{mymodel.myimage}}作为url)
https://github.com/angular/angular.js/blob/master/src/ng/directive/booleanAttrs.js#L329
我面临的问题是,我使用angular输出svg与D3和因为angular没有办法输出xlink:href我被卡住了。
app.directive('ngXlinkHref',function () { return { priority: 99,restrict: 'A',link: function (scope,element,attr) { var attrName = 'xlink:href'; attr.$observe('ngXlinkHref',function (value) { if (!value) return; attr.$set(attrName,value); }); } }; });
完整演示:http://plnkr.co/edit/cMhGRh
但似乎如果我不手动添加xlink:href到元素,svg图像将不呈现。
任何建议如何最好地处理xml命名空间/ svg一起带角度将非常感谢。
解决方法
您可以使用ng-attr-< some attribute>
ng-attr-xlink:href =“{{xxx}}”适用于我。
请注意,您还需要一个空的xlink:href =“”作为初始值。 – Derek Hsu