Skip to content

Commit

Permalink
fix(2570): 修复 appendPadding 设置后,图表更新不断缩小的问题 (#2577)
Browse files Browse the repository at this point in the history
  • Loading branch information
simaQ committed Jun 15, 2020
1 parent 3ec492e commit 402e7b0
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 5 deletions.
9 changes: 5 additions & 4 deletions src/chart/layout/auto.ts
Original file line number Diff line number Diff line change
Expand Up @@ -51,12 +51,13 @@ export function calculatePadding(view: View): Padding {
const calculatedPadding = paddingCal.getPadding();

if (autoPadding) {
const appendPadding = parsePadding(view.appendPadding);
// 取上一次以及当前计算结果的最大区间
return [
Math.max(autoPadding[0], calculatedPadding[0]),
Math.max(autoPadding[1], calculatedPadding[1]),
Math.max(autoPadding[2], calculatedPadding[2]),
Math.max(autoPadding[3], calculatedPadding[3]),
Math.max(autoPadding[0] - appendPadding[0], calculatedPadding[0]),
Math.max(autoPadding[1] - appendPadding[1], calculatedPadding[1]),
Math.max(autoPadding[2] - appendPadding[2], calculatedPadding[2]),
Math.max(autoPadding[3] - appendPadding[3], calculatedPadding[3]),
];
}

Expand Down
32 changes: 32 additions & 0 deletions tests/bugs/2570-spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import { Chart } from '../../src';
import { createDiv } from '../util/dom';

describe('2570', () => {
it('2570', () => {
const data = [
{ year: '1991', value: 3 },
{ year: '1992', value: 4 },
{ year: '1993', value: 3.5 },
{ year: '1994', value: 5 },
{ year: '1995', value: 4.9 },
{ year: '1996', value: 6 },
{ year: '1997', value: 7 },
{ year: '1998', value: 9 },
{ year: '1999', value: 13 },
];
const chart = new Chart({
container: createDiv(),
width: 500,
height: 300,
appendPadding: [20],
});

chart.data(data);
chart.axis(false);
chart.line().position('year*value');
chart.render();

chart.changeSize(400, 300);
expect(chart.autoPadding).toEqual([20, 20, 20, 20]);
});
});
2 changes: 1 addition & 1 deletion tests/unit/chart/chart-spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ describe('Chart', () => {
expect(chart.getLayer(LAYER.FORE).destroyed).toBe(true);
expect(destroyEvent).toBeCalledTimes(1);

expect(() => { chart.forceFit() }).not.toBeThrow();
expect(() => { chart.forceFit() }).not.toThrow();
expect(chart.destroyed).toBe(true);
expect(chart.canvas.destroyed).toBe(true);
expect(div.childNodes.length).toBe(0);
Expand Down

0 comments on commit 402e7b0

Please sign in to comment.