【问题标题】:Angular bind to svg text element getting unknown property error角度绑定到 svg 文本元素获取未知属性错误
【发布时间】:2018-03-30 20:05:44
【问题描述】:

我正在尝试将值绑定到 SVG/文本元素的 dx 属性。如果没有绑定,它看起来像:

<svg width="100%" height="130px" viewBox="0 0 150 150" *ngIf="!filled">
  <circle attr.stroke='{{backColor}}' stroke-width="5" fill='transparent' r="50" cx="50%" cy="35%" />
  <text x="50%" y="32%" dx="8" alignment-baseline="middle" text-anchor="middle" font-size="33" attr.fill="{{color}}">{{value}}
  </text>
  <text x="50%" y="45%" alignment-baseline="middle" text-anchor="middle" font-size="12" attr.fill="{{color}}">{{label}}
  </text>
</svg>

我尝试了各种绑定可能性,例如:

<text x="50%" y="32%" dx="{{dxnum}}" >

<text x="50%" y="32%" [dx]="dxnum" >

但这总是给出一个错误,说 dx 不是 SVG 文本的可识别属性:

无法绑定到dx,因为它不是:svg:text'. ("lor}}' stroke-width="5" fill='transparent' r="50" cx="50%" cy="35%" /&gt; &lt;text x="50%" y="32%" [ERROR -&gt;]dx="{{dxnum}}" alignment-baseline="middle" 的已知属性

【问题讨论】:

    标签: angular svg


    【解决方案1】:

    由于svg 元素上没有对应的属性绑定,所以使用attribute 绑定而不是property 绑定。请参阅Attribute binding 文档

    [attr.dx]="dxnum" 
    

    【讨论】:

    • 有史以来最快的答案!谢谢!
    • @IhorKhomiak 很高兴我的回答对您有所帮助,谢谢 :)
    • @PankajParkar 如何动态设置 viewBox 值?
    猜你喜欢
    • 2010-12-10
    • 1970-01-01
    • 2019-02-11
    • 2017-01-31
    • 2016-07-20
    • 1970-01-01
    • 2016-08-18
    • 2023-01-15
    • 2019-07-05
    相关资源
    最近更新 更多