Vue使用百度地图获取当前城市

Vue使用百度地图获取当前城市

  • 一:申请百度地图密匙
      • 注册登录后需要进行开发者认证
      • 创建应用
      • 获取密匙AK
  • 二:Vue项目使用
      • 下载相应插件
      • html文件引入
      • 创建一个新的js文件(下一步需要引入)
      • 组件引入js并使用
    • 效果

一:申请百度地图密匙

我们需要提前在百度地图开放平台申请密匙才能使用对应的接口去获取城市信息。
百度地图开放平台:http://lbsyun.baidu.com/apiconsole/center#/home

注册登录后需要进行开发者认证

在这里插入图片描述
主要是需要登记认证身份证,这环节需要身份证照片,认证很快,基本提交了一下就认证成功了。
在这里插入图片描述

创建应用

在这里插入图片描述
注意!Referer白名单一定要填写正确,域名不对是无法使用定位功能的!没上线的小伙伴如果仅仅是用来本地测试或者学习的就直接填写*,这样不管是什么域名都可以使用定位功能,但上线了就需要自行更改过来
在这里插入图片描述

获取密匙AK

在这里插入图片描述


二:Vue项目使用

下载相应插件

npm install bmap

html文件引入


在这里插入图片描述

创建一个新的js文件(下一步需要引入)

export default {
  init: function (){
    const AK = '3s9RVp........';  //你的AK
    const BMap_URL = "https://api.map.baidu.com/api?v=2.0&ak="+ AK +"&s=1&callback=onBMapCallback";
      return new Promise((resolve, reject) => {
        // 如果已加载直接返回
        if(typeof BMap !== 'undefined') {
          resolve(BMap);
          return true;
        }
        // 百度地图异步加载回调处理
        window.onBMapCallback = function () {
          resolve(BMap);
        };
        let getCurrentCityName = function () {
          return new Promise(function (resolve, reject) {
            let myCity = new BMap.LocalCity()
            myCity.get(function (result) {
              resolve(result.name)
            })
          })
        }
        // 插入script脚本
        let scriptNode = document.createElement('script');
        scriptNode.setAttribute(type, 'text/javascript');
        scriptNode.setAttribute('src', BMap_URL);
        document.body.appendChild(scriptNode);
      });
  }
}

组件引入js并使用


效果

在这里插入图片描述

你可能感兴趣的:(vue,定位,定位,vue)