相关疑难解决方法(0)

Leaflet-marker 单击事件工作正常,但回调函数中未定义该类的方法

我正在使用以下代码click为某些传单标记(其中我不知道先验数字)的事件添加回调函数:

newArray.forEach(p => {
  let marker = L.marker(latLng).on('click', this.markerClick).addTo(newMap)
  marker.bindPopup(content)
  marker.addTo(newMap)
  marker.openPopup()
})
Run Code Online (Sandbox Code Playgroud)

在类中有markerClick执行此操作的函数:

markerClick(e) {
  console.log("Inside marker click " + e.latlng.lat + "  " + e.latlng.lng)
  this.displayError("You clicked on the marker")
}
Run Code Online (Sandbox Code Playgroud)

console.log正在打印的正确的价值观latlng标记,但是打电话时displayError运行时引发错误说:

this.displayError 不是函数

这是一个在类中声明的函数,我用来根据我的需要显示带有自定义消息的祝酒词。这是代码:

displayError(messageErr: string) {
  let toast = this.toastCtrl.create({
    message: messageErr,
    duration: 3000,
    position: 'top'
  });
  toast.present();
}
Run Code Online (Sandbox Code Playgroud)

为什么说那不是函数?

编辑:它不仅仅是displayError,类的每个函数都给出了这个消息。

javascript gis onclick leaflet ionic-framework

3
推荐指数
1
解决办法
3220
查看次数

标签 统计

gis ×1

ionic-framework ×1

javascript ×1

leaflet ×1

onclick ×1