stroke-dasharray不能与角度6绑定

时间:2018-12-24 09:06:06

标签: angular typescript stroke-dasharray

我将此图表与角度6配合使用,遇到了该图表上的一些冲突,我尝试绑定数据,但是我无法做到这一点,它无法正常工作,

我给的这个stroke-dasharray="5, 100"取代了这个 stroke-dasharray="{{this.master.locationVsStatusMap.size}}, 100"

stackblitz

有人知道该怎么做吗?

提前谢谢!

.single-chart {
  width: 33%;
  justify-content: space-around ;
}

.circular-chart {
  display: block;
  margin: 10px auto;
  max-width: 70%;
  max-height: 150px;
}

.circle-bg {
  fill: none;
  stroke: #3c9ee5;
  stroke-width: 3.8;
}

.circle {
  fill: none;
  stroke-width: 3.8;border-right: 1px solid white; border-left: 1px solid white;
  stroke-linecap:square;
  animation: progress 1s ease-out forwards;
}

@keyframes progress {
  0% {
    stroke-dasharray: 0 100;
  }
}

.circular-chart.orange .circle {
  stroke: #ff9f00;border-right: 1px solid white; border-left: 1px solid white;
}

.circular-chart.green .circle {
  stroke: #4CC790;
}

.circular-chart.blue .circle {
  stroke: #3c9ee5;
}

.percentage {
  fill: #666;
  font-family: sans-serif;
  font-size: 0.3em;
  text-anchor: middle;
}
.flex-wrapper {
  display: flex;
  flex-flow: row nowrap;
}
<div class="flex-wrapper">
<div class="single-chart">
  <svg viewBox="0 0 36 36" class="circular-chart orange">
    <path class="circle-bg"
          d="M18 2.0845
          a 15.9155 15.9155 0 0 1 0 31.831
          a 15.9155 15.9155 0 0 1 0 -31.831"
    />
    <path class="circle"
          stroke-dasharray="5, 100"
          d="M18 2.0845
          a 15.9155 15.9155 0 0 1 0 31.831
          a 15.9155 15.9155 0 0 1 0 -31.831"
    />
      <text x="18" y="20.35" class="percentage">50%</text>
  </svg>
</div>
</div>

2 个答案:

答案 0 :(得分:2)

使用样式绑定-https://coryrylan.com/blog/angular-progress-component-with-svg

style.stroke-dasharray="{{varible}}, 100"

答案 1 :(得分:1)

尝试属性绑定

attr.stroke-dasharray="{{this.master.locationVsStatusMap.size}}, 100"

派生示例:https://stackblitz.com/edit/angular-wqjlc5

引用以下内容:https://teropa.info/blog/2016/12/12/graphics-in-angular-2.html

相关问题