controls - Mapbox GL 如何创建自定义控件?

标签 controls mapbox-gl

我想使用 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/

    相关文章:

    javascript - 如何在 React js 中更改 mapbox-gl 的中心纬度和经度?

    asp.net - 检测 JavaScript 在 ASP.NET 中何时被禁用

    C# 设置 Windows 文件夹 View

    javascript - Mapbox 在点击事件上更改缩放

    javascript - Mapbox向 map 添加图层,通过添加图层出现错误

    react-native - 如何在React Native Mapbox GL中放置 float 按钮

    java - Android蓝牙远程控制项目指导

    forms - 如何在 Delphi XE2 中使 TMaskEdit 进行多行编辑

    .net - 是否有 Control.BeginInvoke 的变体可以在句柄销毁之前/之后工作?

    reactjs - '!' 中的意外 'worker-loader!mapbox-gl/dist/mapbox-gl-csp-worker'