300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > vue vue-baidu-map百度地图(详细地址搜索框 获取经纬度)以及获取后台数据回显

vue vue-baidu-map百度地图(详细地址搜索框 获取经纬度)以及获取后台数据回显

时间:2020-12-26 02:22:19

相关推荐

vue vue-baidu-map百度地图(详细地址搜索框 获取经纬度)以及获取后台数据回显

vue-baidu-map文档地址Vue Baidu Map

一:vue下载百度地图插件

npm install vue-baidu-map --save

二:申请百度地图AK密钥

三:引用百度地图

<template><div class="map" ref="map"><!-- 地图实例 --><baidu-map class="bmView" :scroll-wheel-zoom="true" :center="location" :zoom="zoom" @ready="handler" ak="xxx"><!-- 地图显示 --><bm-view style="width: 100%; height:400px; flex: 1"></bm-view><!-- 标记点组件 --><bm-marker :position="{ lng: location.lng, lat: location.lat }"></bm-marker><!-- 搜索控件 --><bm-control><bm-auto-complete v-model="ruleForm.workAddress" :sugStyle="{zIndex: 999999}" @confirm="handleConfirm"><el-input v-model="ruleForm.workAddress" placeholder="请输入地址来直接查找相关位置" style="width:500px"></el-input></bm-auto-complete></bm-control></baidu-map></div></template><script>import {BaiduMap,BmView,BmMarker,BmControl,BmAutoComplete} from "vue-baidu-map";export default {components: {BaiduMap,BmMarker,BmView,BmControl,BmAutoComplete,},data() {return {// 要搜索的关键词BMap: null,// 地图显示的中心坐标location: {lng: 108.3444553,lat: 22.81879829,},// 缩放,15基本上就可以看附近的一些街道了zoom: 15,keyWord: "",}},methods:{handler(BMap) {this.BMap = BMap;},handleConfirm({ item }) {const that = this;let queryString = `${item.value.city}${item.value.district}${item.value.business}`;var myGeo = new BMap.Geocoder();myGeo.getPoint(queryString, function (point) {if (point) {// console.log(point, "point");that.location = point;}});},},}</script>//去除地图水印<style type="text/css">.BMap_cpyCtrl {display: none;}.anchorBL {display: none;}</style>

* 获取后台省、市、区的name,转换成110101数据回显

//省市区回显数据this.addForm.selectedOptions = TextToCode[this.addForm.provinceName][this.addForm.cityName][this.addForm.areaName].code;console.log(this.addForm.selectedOptions ,'回显数据')

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。