Mapbox 背景图层点击事件不起作用

Mapbox background layer click event not working

我正在尝试在 Mapbox 中的透明背景图层上设置点击事件。这是一个代码片段:

    map.on('load', function () {
          map.addLayer({
            id: 'transparent',
            type: 'background',
            interactive: true,
            paint: {
              'background-color': '#dedede',
              'background-opacity': 0
            }
    
          })
    }
    
    //This doesn't print Hello World to the console
    map.on('click', 'transparent', function () {
      console.log('Hello World')
    })

在符号图层上调用相同的事件没有问题。任何帮助将不胜感激。

层指定源的样式。层的类型由 'type' 属性 指定,并且必须是背景、填充、线条、符号、光栅、圆形、填充拉伸、热图、山体阴影之一。

除了背景类型的图层外,每个图层都需要引用一个来源。

图层获取它们从来源获得的数据,可选择过滤特征,然后定义这些特征的样式。

我建议在地图上添加一个事件,而不是像:

map.on('click', function (e) {
//code
});

示例:

https://docs.mapbox.com/mapbox-gl-js/example/mouse-position/

如何添加背景图层:

https://bl.ocks.org/stevage/a09dcbd11fb24b20033f2d3f6ab01374