我想使用 Mapbox gl Api 创建自定义控件。我正在尝试扩展 Control 类并添加我自己的功能。它似乎不起作用。我收到 TypeError: "x"is not a constructor error in my console。即使在扩展类之后,我在构造函数中使用了 super()。我做错了吗,还有其他方法可以创建自定义控件吗?
最佳答案
您的 Mapbox 自定义控件应该实现下一个接口(interface):
onAdd(map)
— 一个接受 map 对象并应返回您的控制对象的函数。当您的控件添加到 map 时,它将被调用。 onRemove(map)
— 一个接受 map 对象的函数,当控制从 map 中移除时将被调用。您可以在此方法中取消绑定(bind)事件监听器。 这是一个 CodePen example .只需使用您的访问 token 。
关于controls - Mapbox GL 如何创建自定义控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40162662/