vue 使用vue-baidu-map 绘制线
时间: 2025-05-14 17:45:48 浏览: 18
### 如何在 Vue 中使用 `vue-baidu-map` 绘制线条
要在 Vue 项目中通过 `vue-baidu-map` 插件绘制线条,可以利用 BMap.Polyline 类来创建折线对象并将其添加到地图实例中。以下是详细的说明以及代码示例。
#### 地图初始化与 Polyline 配置
为了绘制一条或多条线路,需要先完成地图组件的初始化工作,并设置好起点和终点坐标数组。Polyline 支持自定义样式参数如颜色、宽度等[^1]。
```javascript
<template>
<baidu-map class="map" :center="{lng: 116.404, lat: 39.915}" :zoom="15">
<!-- 添加 polyline -->
<bm-polyline :path="polylinePath" stroke-color="blue" :stroke-opacity="0.8" :stroke-weight="4"/>
</baidu-map>
</template>
<script>
export default {
data() {
return {
polylinePath: [
{ lng: 116.404, lat: 39.915 },
{ lng: 116.414, lat: 39.925 },
{ lng: 116.424, lat: 39.935 }
]
};
}
};
</script>
<style scoped>
.map {
width: 100%;
height: 500px;
}
</style>
```
上述代码展示了如何配置 `<bm-polyline>` 来渲染一段蓝色实线连接三个地理点[^2]。其中 `stroke-color`, `stroke-opacity`, 和 `stroke-weight` 属性用于调整线条外观特性。
#### 动态更新路径数据
如果希望动态改变已有的路线或者增加新的节点,则可以通过修改绑定的数据变量重新触发视图刷新:
```javascript
methods: {
addPointToLine(newLngLat) {
this.polylinePath.push(newLngLat);
}
},
mounted(){
setTimeout(() => {
this.addPointToLine({ lng: 116.434, lat: 39.945 });
}, 5000); // 延迟五秒后新增一个点位
}
```
此方法允许程序运行期间灵活扩展轨迹长度而无需销毁重建整个图形元素[^3]。
---
阅读全文
相关推荐


















