0

我将自定义按钮添加到地图。此按钮显示在屏幕的左上角。

JSFIDDLE 演示在这里。

我需要将数据附加到按钮。在我的代码中,我向按钮添加了一个数字。点击后我想在控制台中显示这个数字。请帮我。

JS:

ymaps.ready(init);

var map;

function init(){     
    map = new ymaps.Map("map", {
        center: [12.12, 12.12],
        controls: [],
        zoom: 5
    });  

    var btn = new ymaps.control.Button({
        data: {
            content: "bla",
            num: 77783
        }
    });

    map.controls.add(btn, {
        float: 'left',
    }); 

    btn.events.add('click', (e) => {
        console.log('binded data is:', e.get('num'))
    });    
};
4

1 回答 1

1

您需要更改此功能:

btn.events.add('click', (e) => {
    console.log('bound data is:', e.get('num'))
});   

至:

btn.events.add('click', (e) => {
    console.log('bound data is:', e.originalEvent.target.data.get('num'))
});

更新的小提琴

于 2018-07-29T17:23:36.653 回答