vue 高德地图 获取数据添加多个点标记 点击按钮对应的点标记跳动一下
时间: 2023-09-07 13:13:31 浏览: 317
首先,你可以使用高德地图 JavaScript API 来在 Vue 中集成高德地图。然后在获取到数据后,使用 `addMarkers()` 方法添加多个点标记,该方法接收一个标记数组作为参数。
接下来,你可以使用 `setAnimation()` 方法将点击按钮对应的标记设置为“跳动”动画。该方法接收一个 `AMap.Marker.AnimationName` 枚举值作为参数,可以设置为 `AMap.Marker.AnimationName.BOUNCE` 来实现跳动效果。
以下是一个简单的示例代码:
```html
<template>
<div id="map-container"></div>
<button @click="startAnimation">开始跳动</button>
</template>
<script>
import AMapLoader from '@amap/amap-jsapi-loader'
export default {
data() {
return {
map: null,
markers: []
}
},
mounted() {
AMapLoader.load({
key: 'your-amap-api-key',
version: '2.0',
plugins: ['AMap.MarkerClusterer']
}).then(AMap => {
this.map = new AMap.Map('map-container', {
zoom: 13,
center: [116.397428, 39.90923]
})
const marker1 = new AMap.Marker({
position: [116.407428, 39.90923]
})
const marker2 = new AMap.Marker({
position: [116.417428, 39.90923]
})
const marker3 = new AMap.Marker({
position: [116.427428, 39.90923]
})
this.markers = [marker1, marker2, marker3]
this.map.addMarkers(this.markers)
})
},
methods: {
startAnimation() {
// 假设点击第二个标记
this.markers[1].setAnimation(AMap.Marker.AnimationName.BOUNCE)
}
}
}
</script>
```
在实际应用中,你需要根据实际需求修改代码,并在适当的时机添加标记和设置动画。
阅读全文