mapv icon indicating copy to clipboard operation
mapv copied to clipboard

多个图层点击事件

Open DCountry opened this issue 4 years ago • 5 comments

界面有点、线等多个图层,在options中通过methods添加了点击事件,点击屏幕时,事件被传递到了多个图层,触发了多个回调函数。怎么为每个图层单独定义点击事件呢?

      var lineOptions = {
        strokeStyle: 'rgba(255, 250, 50, 0.8)',
        shadowColor: 'rgba(255, 250, 50, 1)',
        shadowBlur: 20,
        lineWidth: 2,
        zIndex: 100,
        draw: 'simple',
        methods: { // 一些事件回调函数
          click: function(item) { // 点击事件,返回对应点击元素的对象值
            console.log('Line Clicked')
          }
        }
      }
      var lineLayer = new mapv.baiduMapLayer(map, lineDataSet, lineOptions);
      var pointOptions = {
        fillStyle: 'rgba(254,175,3,0.7)',
        shadowColor: 'rgba(55, 50, 250, 0.5)',
        shadowBlur: 10,
        size: 5,
        zIndex: 10,
        draw: 'simple',
        methods: { // 一些事件回调函数
          click: function(item) { // 点击事件,返回对应点击元素的对象值
            console.log('Point Clicked')
          }
        }
      };
      var pointDataSet = new mapv.DataSet(pointData);
      var pointLayer = new mapv.baiduMapLayer(map, pointDataSet, pointOptions);

DCountry avatar Oct 02 '20 13:10 DCountry

已解决

DCountry avatar Dec 08 '20 03:12 DCountry

请问怎么解决的?单页面应用,调用mapvLayer.destroy(); 再new mapv.baiduMapLayer生成新的对象,click时会报错。

zccmynotebook avatar Dec 31 '20 11:12 zccmynotebook

我们也遇到了同样的问题,方便说一下解决思路吗?

Wincy94 avatar Jul 12 '21 06:07 Wincy94

我们也遇到了同样的问题,绘制了线、面、点,各自都有各自的事件。然后点击了都一起触发了。尴尬

shiliangL avatar Aug 04 '21 01:08 shiliangL

已解决

怎么处理的最后?

shiliangL avatar Oct 07 '21 14:10 shiliangL