代码之家  ›  专栏  ›  技术社区  ›  ttmt

Angular/svg-将数据传递到svg

  •  1
  • ttmt  · 技术社区  · 8 年前

    我这里有个闪电战- https://stackblitz.com/edit/angular-vkwets?file=src%2Fapp%2Fdonuts.template.html

    我有一个角度组件,它为传递给该组件的数组的每个数据点创建一个svg圆环图。

    我可以访问传递到组件中的数据,但是否可以在svg中使用它。

    像这样的 stroke-dasharray=donut.percent 100-donut.perecent

    <div>
      <ul>
        <li *ngFor="let donut of donutData">
          {{donut.percent}}
          <svg width="20%" height="20%" viewBox="0 0 42 42" class="donut">
            <circle class="donut-hole" 
                    cx="21" 
                    cy="21" 
                    r="15.91549430918954" 
                    fill="#fff"></circle>
    
            <circle class="donut-ring" 
                    cx="21" 
                    cy="21" 
                    r="15.91549430918954" 
                    fill="transparent" 
                    stroke="#d2d3d4" 
                    stroke-width="3"></circle>
    
            <circle class="donut-segment" 
                    cx="21" 
                    cy="21" 
                    r="15.91549430918954" 
                    fill="transparent" 
                    stroke="green" 
                    stroke-width="3" 
                    stroke-dasharray="60 40"
                    stroke-dashoffset="25"></circle>
          </svg>
    
        </li>
      </ul>
    </div>
    
    1 回复  |  直到 8 年前
        1
  •  3
  •   ConnorsFan    8 年前

    attribute binding :

    [attr.stroke-dasharray]="donut.percent + ' ' + (100 - donut.percent)"
    

    看到了吗 this stackblitz

    推荐文章