Highcharts选择事件中变量的更改值,以角度为单位

问题描述 投票:0回答:1

首先,使用Highcharts API以角度7+提取代码:

export class TestComponent implements OnInit{
    seek: boolean = false;
    exampleChart;
    public options = {
        chart:{
            zoomType: 'x',
            events: {
                selection: function(event){
                    this.seek = true;
                    console.log(this.seek); // outputs to true
                }
            }
        },
        xAxis:{
            type:'datetime'
        }
        series:{
            // given relevant datetime values
        }
    };

    constructor(){}
    ngOnInit{
        this.exampleChart = this.options;
    }

    onClick(){
        console.log(this.seek); // outputs false
    }

}

场景:首先,我在图形中选择一个特定部分,然后单击按钮

由于zoomtype位于x轴上,所以我可以放大/缩小,并且selection event会触发正确的事件值。但是,在该事件中,我还将seek的值更改为true。此更改不会反映到原始seek上,因为在按下按钮并调用onClick()函数时,控制台输出中的seek值为false。我不知道为什么会这样发生,以及如何获得正确的值。

angular highcharts
1个回答
0
投票

@ sagat建议的正确答案:

public options = {
        chart:{
            zoomType: 'x',
            events: {
                selection: (event)=> {
                    this.seek = true;
                    console.log(this.seek); // outputs to true
                }
            }
        },
        xAxis:{
            type:'datetime'
        }
        series:{
            // given relevant datetime values
        }
    };


constructor(){}
    ngOnInit{
        this.exampleChart = this.options;
    }

    onClick(){
        console.log(this.seek); // outputs true
    }

谢谢。

© www.soinside.com 2019 - 2024. All rights reserved.