我创建了一个渲染SVG的组件,它工作正常。但是,我想在一个单独的组件中包含该SVG的一部分。然而,当我这样做时,内部SVG不会被渲染 - 我猜测(不太了解SVG)是由于组件的标签不是有效的SVG元素。
在this Plnkr中可以看到一个例子。不显示inner-svg-example
内的文字。但是,当您在开发人员工具中编辑页面并删除inner-svg-example指令时,会显示 。
由于Angular 2在指令上弃用replace
选项,解决此问题的最佳方法是什么?
答案 0 :(得分:0)
而不是使用元素选择器
<inner-svg-example></inner-svg-example>
在g
之类的有效svg标记上将其用作属性选择器解决它
<g inner-svg-example></g>
更多需要在svg元素前面指定svg:
,在你的情况下它是
<text>...</text>
到
<svg:text>...</svg:text>
基于this blog post
在@John's answer的帮助下,另一个类似的问题
Demo Plnkr
你的plnkr使用早期版本的angular2,change log来支持svg