gpt4 book ai didi

javascript - Amcharts "TypeError: this.chart.zoomToDates is not a function"

转载 作者:行者123 更新时间:2023-12-01 01:50:33 33 4
gpt4 key购买 nike

我正在尝试关注this创建外部缩放控制的底漆。

我有 3 个按钮

  <v-btn v-on:click="showPeriod('1 month')">1 month</v-btn>
<v-btn v-on:click="showPeriod('3 month')">3 month</v-btn>
<v-btn v-on:click="showPeriod('6 month')">6 month</v-btn>

eventListener showPeriod

  showPeriod: function(period) {
console.log("Periods", this.periods)
if (period != 'All'){
this.changeDataZoom(this.periods[period])
}
else {
//Logic fot 'ALL' period
}
},

changeDataZoom: function (rawPeriod) {
let regex = /([0-9]{2,4}[\-][0-9]{2}[\-][0-9]{2}).*?/g
let periods = []

rawPeriod.match(regex).forEach(function (period) {
periods.push(moment(period,"YYYY-MM-D").format("YYYY-MM-DD"))
})

//Periods ["2018-01-26", "2018-07-27"]
this.chart.zoomToDates(periods[0], periods[1])
},

但是当我尝试调用 this.chart.zoomToDates 时,我收到错误“TypeError:this.chart.zoomToDates 不是函数”

我还尝试使用 AmCharts.stringToDate 将字符串转换为日期,但它也没有帮助我。 Link重现错误

附注我了解 periods 属性 - 但在本例中 1 个月实际上并不是日历月,因此我需要手动指定日期。

最佳答案

该代码笔使用序列图表,而您使用股票图表。

序列图有方法zoomToDates

zoomToDates(start, end)
start - start date, Date object \ end - end date, Date object


股票图表有方法zoom

zoom(startDate, endDate)
startDate, endDate - Date objects.

所以,你需要这样的东西:

changeDataZoom: function (rawPeriod) {
let regex = /([0-9]{2,4}[\-][0-9]{2}[\-][0-9]{2}).*?/g
let periods = []

rawPeriod.match(regex).forEach(function (period) {
periods.push(moment(period,"YYYY-MM-D").format("YYYY-MM-DD"))
})

//Periods ["2018-01-26", "2018-07-27"]
this.chart.zoom(new Date(periods[0]), new Date(periods[1]))
}

关于javascript - Amcharts "TypeError: this.chart.zoomToDates is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51588629/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com