本文介绍: 点标记bm–maker的使用,报错Error in callback for watcher “labelStyle“: “TypeError: Cannot read property ‘setStyle’ of undefined“是bm–label组件的参数labelStyle使用方法不正确导致的,labelStyle需要先在data中声明。
点标记 bm–marker的使用
<script>
import BaiduMap from 'vue-baidu-map/components/map/Map.vue'
import bmMarker from 'vue-baidu-map/components/overlays/Marker'
import bmLabel from './components/vue-baidu-map/components/overlays/Label'
export default {
components: {BaiduMap,bmMarker ,bmLabel },
}
</script>
<bm-marker>
是点标记,其中参数position是标记点的经纬度;<bm-label>
是标记点的文字标注,其中参数content是文字内容、labelStyle是文字样式、offset是相对位置
<template>
<div class="map-content" v-if="iscollegeRole">
<baidu-map class="bm-view map"
:ak="mapAK"
:scroll-wheel-zoom="true"
:center="mapData.center"
:zoom="mapData.zoom"
:continuous-zoom="true"
@ready="handler">
<bm-marker :position="mapData.center">
<bm-label content="标记点"
:labelStyle="labelStyle"
:offset="{width: -10, height: 30}"/>
</bm-marker>
</baidu-map>
</div>
</template>
注:若开发时发现控制台报错
Error in callback for watcher "labelStyle": "TypeError: Cannot read property 'setStyle' of undefined"
原因: bm-label组件的参数labelStyle使用方法不正确导致的,labelStyle需要先在data中声明,然后在<bm-label>
中使用
<script>
export default {
data() {
return {
labelStyle:{color: 'red', fontSize : '14px',fontWeight:'600'},
}
},
}
</script>
完整代码:
<template>
<div class="map-content" v-if="iscollegeRole">
<baidu-map class="bm-view map"
:ak="mapAK"
:scroll-wheel-zoom="true"
:center="mapData.center"
:zoom="mapData.zoom"
:continuous-zoom="true"
@ready="handler">
<bm-marker :position="mapData.center">
<bm-label content="标记点"
:labelStyle="labelStyle"
:offset="{width: -10, height: 30}"/>
</bm-marker>
</baidu-map>
</div>
</template>
<script>
import BaiduMap from 'vue-baidu-map/components/map/Map.vue'
import bmMarker from 'vue-baidu-map/components/overlays/Marker'
import bmLabel from './components/vue-baidu-map/components/overlays/Label'
export default {
components: {BaiduMap,bmMarker ,bmLabel },
data() {
return {
mapAK: 'XXXXXXXXXXX',//需要到百度地图官网申请ak
BMap:null,
map:null,
mapData: {
//中心坐标
center: { lng: 113.33, lat: 39.01 },
//缩放级别,1~19
zoom: 19
},
labelStyle:{color: 'red', fontSize : '14px',border:'none',background:'none',fontWeight:'600'},
}
},
methods:{
handler ({BMap, map}) {
console.log(BMap, map)
this.BMap = BMap
this.map = map
}
},
}
</script>
<style scope>
.map {
width: 100%;
height: 400px;
}
</style>
原文地址:https://blog.csdn.net/zm_960911/article/details/132205017
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_29470.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。