无法在 Highcharts 的 RangeSelector 中单击事件的 eventObject 中访问 UserMin/UserMax

问题描述

我正在处理在 Highcharts 中实现 RangeSelector 的任务(在 React 中使用功能组件)。我已经为月份类别实现了一个点击事件。在事件处理程序中,我需要访问作为参数存在的事件对象内的 UserMin 和 UserMax 值。但是,我无法仅访问具有表单的事件对象中的这两个属性

PointerEvent {isTrusted: true,pointerId: 1,width: 1,height: 1,pressure: 0, …}

你可以检查这个小提琴 https://jsfiddle.net/pravindvarma/k65eq92v/

当您单击月份按钮时,控制台会显示此对象。当我点击 YTD 时,它显示 e.xAxis 未定义。

谢谢

解决方法

您可以使用 afterSetExtremes 事件,检查它是否由范围选择器按钮触发并获取 userMinuserMax 值。

    xAxis: {
        events: {
            afterSetExtremes: function(e){
                if (e.trigger === 'rangeSelectorButton') {
                    const { userMin,userMax } = e;
                    
                    console.log(userMin,userMax);
                }
            }
        }
    }

现场演示: https://jsfiddle.net/BlackLabel/362gv98u/

API 参考: https://api.highcharts.com/highcharts/xAxis.events.afterSetExtremes