存在的Vue组件的内部这张地图和我想要做的是使用CustomEvents如何绑定到Highcharts构造函数/收听来自Vue的组件
this.$emit('somethingHappened', HighmapsEventObject)
mounted() {
Highcharts.mapChart(this.$el, {
series: [{
events: {
click:() => {
in here
}
}
}]
})
}
在
mounted() {
Highcharts.mapChart(this.$el, {
series: [{
events: {
click:() => {
`this.$emit('somethingHappened', HighmapsEventObject)`
}
}
}]
})
}
但很明显,this
在这一点上,引用了Highmap的this
不是Vue的组件的this
所以我一直试图做这样的事情:
mounted() {
Highcharts.mapChart(this.$el, {
series: [{
events: {
click: (e) => {
this.$emit('somethingHappened', e)
}
}
}]
}).bind(this)
}
,但我得到:
... default.a.mapChart(...).bind is not a function
,我无法弄清楚如何通过Vue公司组件的this
到highmaps构造函数和Vue自然不会听到CustomEvent
s,所以我无法弄清楚如何在该回调中分派事件,以便Vue知道它发生了。
mounted() {
Highcharts.mapChart(this.$el, {
series: [{
events: {
click: (e) => {
let event = new CustomEvent('mapclicked', {
detail: e
})
e.target.dispatch(event)
}
}
}]
})
}
所以我的问题,终于,是怎么做的,我不是一个:在Vue公司听CustomEvent
S或B:绑定Vue公司的this
到Highmaps构造?
感谢这么
臭名昭著的'that'工作一种享受。谢谢! – codyj