ExtJs 케이크 그림에 데이터 기록이 100%일 때 tooltip과 이벤트가 잘못되었습니다.
ExtJs 케이크 그림에 데이터 기록이 100%일 때 tooltip과 이벤트가 잘못되었습니다.
문제 설명
var store = Ext.create('Ext.data.JsonStore', {
fields: ['name', 'number'],
data: [{
'name': 'Homer',
"number": 100
}]
});
Ext.create({
xtype: 'panel',
layout: {
type: 'vbox'
},
items: [{
xtype: 'polar',
store: store,
insetPadding: 20,
innerPadding: 20,
legend: {
docked: 'bottom'
},
interactions: ['rotate'],
series: [{
type: 'pie',
label: {
display: 'outside',
field: 'name'
},
xField: 'number',
tooltip: {
style: 'background: #fff',
renderer: function(storeItem, item) {
this.setHtml('test');
}
}
}],
width: '100%',
height: 300
}],
width: 500,
height: 600,
renderTo: Ext.getBody()
});
데이터 기록이 하나뿐이고 케이크 그림이 100%일 때 tooltip이 표시되지 않으며 itemclick 이벤트가 잘못되었습니다. 프레젠테이션 주소:https://fiddle.sencha.com/#fiddle/c42&view/editor
해결 방법
케이크 그림을 다시 쓰는 betweenAngle 방법입니다. Sencha Cmd로 구축하면 이 파일을 오버라이드 폴더에 넣고 실행해야 합니다
sencha app refresh
Ext.define('overrides.chart.Pie', {
override: 'Ext.chart.series.Pie',
betweenAngle: function(x, a, b) {
if (a === 0 && b > (Math.PI*2-0.00000001)) {
return true;
} else {
var pp = Math.PI * 2,
offset = this.rotationOffset;
if (!this.getClockwise()) {
x *= -1;
a *= -1;
b *= -1;
a -= offset;
b -= offset;
} else {
a += offset;
b += offset;
}
b -= a;
x -= a;
x %= pp;
b %= pp;
x += pp;
b += pp;
x %= pp;
b %= pp;
return x < b;
}
}
});
수정된 효과 데모 주소:https://fiddle.sencha.com/#fiddle/jjq&view/editor
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
extjsgrid에서columns에 사용되는store가 초기화되지 않은 해결 방법자세히 보기 extjs를 사용하여grid를 개발할 때, 만약에 어떤 열의 편집기가store라면,store가 불러오는 것을 완성하지 못했을 때list 데이터를 불러옵니다. 이 열이 표시되지 않는 문제는 다음과 같습니다...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.