diff --git a/src/scale/Time.ts b/src/scale/Time.ts index 07f589867e..a3a7de479c 100644 --- a/src/scale/Time.ts +++ b/src/scale/Time.ts @@ -206,8 +206,10 @@ class TimeScale extends IntervalScale { let upperUnitIndex = primaryTimeUnits.length - 1; let maxLevel = 0; each(ticks, tick => { - upperUnitIndex = Math.min(upperUnitIndex, indexOf(primaryTimeUnits, tick.time.upperTimeUnit)); - maxLevel = Math.max(maxLevel, tick.time.level); + if (tick.time) { + upperUnitIndex = Math.min(upperUnitIndex, indexOf(primaryTimeUnits, tick.time.upperTimeUnit)); + maxLevel = Math.max(maxLevel, tick.time.level); + } }); if (scaleBreakHelper) { diff --git a/src/util/time.ts b/src/util/time.ts index 5157c63f41..6c6ed6bfe8 100644 --- a/src/util/time.ts +++ b/src/util/time.ts @@ -343,7 +343,7 @@ export function leveledFormat( else if (zrUtil.isFunction(formatter)) { const extra: TimeAxisLabelFormatterExtraParams = { time: tick.time, - level: tick.time.level, + level: tick.time ? tick.time.level : 0, }; const scaleBreakHelper = getScaleBreakHelper(); if (scaleBreakHelper) { diff --git a/test/axis-customTicks.html b/test/axis-customTicks.html index 7f79f099d8..9aa8ec04e3 100644 --- a/test/axis-customTicks.html +++ b/test/axis-customTicks.html @@ -40,6 +40,7 @@
+
+ +