2
각도로 easypiecharts를 사용하고 있습니다. 마크 업에 속성 (data-statusId)을 추가하고 js에서이를 사용하여 진행 막대의 색상을 변경하려고합니다. data-opt = 8 일 때 회색으로 바뀌거나 그렇지 않으면 green.But해야합니다. 왜냐하면 greyBar 값은 항상 "정의되지 않은"값으로 반환되기 때문에 항상 내 상태가 실패합니다.EasyPieCharts의 동적 데이터를 기반으로 ProgressBar 색 변경
참조 용 스크린 샷 첨부. "opt"에 대한 데이터 집합의 값에 액세스해야합니다.
.directive('isLoaded', function() {
return {
restrict: 'A', //Attribute type
link: function (scope, elements, arguments) {
ProgressMeter($('#inprogress-card').find('.progress-icon'), false);
}
}
});
function Meter($ele, isPopUp) {
setTimeout(function() {
if (isPopUp && $ele.find('canvas').length > 0) {
$ele.data('easyPieChart').update(0);
$ele.data('easyPieChart').update($ele.attr('data-percent'));
}
else {
$ele.easyPieChart({
easing: 'easeOutBounce',
scaleColor: false,
lineWidth: 4,
trackColor: '#CCCCCC',
barColor: function() {
var greyBar = $ele.data('opt');
if (typeof(greyBar) != 'undefined')
return '#44AD3A'
else
return '#989798'
},
lineCap: 'round',
onStep: function (from, to, percent) {
}
});
}
}, 100);
}`
HTML : 나는 데이터 옵트 문제를 직면 한 방법 몇 가지를 들어
<div class="progress-icon" data-opt="{{list.Status}}" data-percent=" {{ (20/30)* 100)}} ">
어디'이 라인에서 오는 ele' :'var에 greyBar = $ (ELE) .DATA ('옵트을');'? 나는'$ ele'을 보지만'ele'는 보지 않습니다. 'var greyBar = $ ele.data ('opt'); 할 수 없어야합니까? – Zach
이 수정되었습니다. 나는 그것을 시도했지만, 아니, 그것은 정의되지 않은 반환, –
좋아, 내 다음 질문은 ...'opt'는'typeof (opt)'다음 줄에서 오는가? 당신은'greyBar'를 얻지 만, 당신이 그것을 사용하는 것을 보지 못합니다. :) – Zach