diff --git a/src/component/tooltip/TooltipView.ts b/src/component/tooltip/TooltipView.ts index 2d259799ac..ca26c1bb19 100644 --- a/src/component/tooltip/TooltipView.ts +++ b/src/component/tooltip/TooltipView.ts @@ -295,8 +295,12 @@ class TooltipView extends ComponentView { const dispatchAction = makeDispatchAction(payload, api); - // Reset ticket - this._ticket = ''; + /** Note: We don't reset the ticket here anymore, because if the tooltip content + * hasn't changed, we want to preserve the async ticket so that pending callbacks + * can still update the tooltip. The ticket will be reset in _showTooltipContent + * when new content is actually shown. + */ + // this._ticket = ''; // When triggered from axisPointer. const dataByCoordSys = payload.dataByCoordSys; diff --git a/test/tooltip-async-connect.html b/test/tooltip-async-connect.html new file mode 100644 index 0000000000..2e78f07b5e --- /dev/null +++ b/test/tooltip-async-connect.html @@ -0,0 +1,172 @@ + + + + +
+ + + + + +Tooltip Async Connect
+Charts connected with group "group1"
++ Expected: When hovering over chart 1, BOTH tooltips should + initially show "Loading", then BOTH should update to show + the resolved value. +
++ Note: Each chart's async formatter resolves independently + after 500ms. +
+