聆听点击 MapBox Geocoder 的 "X" 按钮
Listen the click on the "X" button of a MapBox Geocoder
我想使用 MapBox Geocoder(在地图之外)可视化并 hide/clear 地图中的一个点。
每当用户搜索地址时,
我用
geocoder.on('result', function (e) {...}
要创建一个点,填充一个图层并在地图上将其可视化。
我想在用户单击“x”按钮时 clear/clean 图层。
Clear Mapbox geocode
关于如何监听 MapBox Geocoder 的“X”按钮的点击有什么想法吗?
我看过doc,但直到现在运气不太好!
我的代码如下所示:
function point (){
geocoder.on('result', function (e) {
console.log(e)
if (e.result.place_name && e.result.center) {
var point = create_feature(e.result.place_name, e.result.center[0], e.result.center[1])
//Add points on the map
map.getSource('blablabla').setData({
type: 'FeatureCollection',
features: [point]
});
}
})
};
function create_feature(userId, x, y) {
var user_feature = {
'type': 'Feature',
'properties': {
'description': userId
},
'geometry': {
'type': 'Point',
'coordinates': [x, y]
}
};
return user_feature;
};
https://github.com/mapbox/mapbox-gl-geocoder/blob/master/API.md#on
Available events and the data passed into their respective event
objects are:
- clear Emitted when the input is cleared
所以这应该有效:
geocoder.on('clear', function () {
})
我想使用 MapBox Geocoder(在地图之外)可视化并 hide/clear 地图中的一个点。
每当用户搜索地址时, 我用
geocoder.on('result', function (e) {...}
要创建一个点,填充一个图层并在地图上将其可视化。
我想在用户单击“x”按钮时 clear/clean 图层。
Clear Mapbox geocode
关于如何监听 MapBox Geocoder 的“X”按钮的点击有什么想法吗?
我看过doc,但直到现在运气不太好!
我的代码如下所示:
function point (){
geocoder.on('result', function (e) {
console.log(e)
if (e.result.place_name && e.result.center) {
var point = create_feature(e.result.place_name, e.result.center[0], e.result.center[1])
//Add points on the map
map.getSource('blablabla').setData({
type: 'FeatureCollection',
features: [point]
});
}
})
};
function create_feature(userId, x, y) {
var user_feature = {
'type': 'Feature',
'properties': {
'description': userId
},
'geometry': {
'type': 'Point',
'coordinates': [x, y]
}
};
return user_feature;
};
https://github.com/mapbox/mapbox-gl-geocoder/blob/master/API.md#on
Available events and the data passed into their respective event objects are:
- clear Emitted when the input is cleared
所以这应该有效:
geocoder.on('clear', function () {
})