• uni app +vue 引用 百度地图API取位置,VUE用百度地图获取当前位置(城市)


    uni app +vue 引用 百度地图API取位置,VUE用百度地图获取当前位置(城市)
     
    1.在index.html 引入 百度js
    <script src="http://api.map.baidu.com/api?v=2.0&ak=你的密钥" type="text/javascript"></script>
     
    2.创建js文件,放入以下代码:
     
    export default {
        init: function () {
            const AK = "lyFvtNiZ2fH1jWqGIRMAxDwDbMwvXgsv";
            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);
            });
        }
    }

    3.需要用的组件里开始引用和调用
    写在方法里,在mounted里调用–下面代码不可少

      mounted() {
        var isWeixn = this.is_weixn();
        if (isWeixn) {
          this.getCity();
        }
      },
      methods: {
        getCity() {
          map.init().then(BMap => {
            const locationCity = new BMap.Geolocation();
            var that = this;
            locationCity.getCurrentPosition(  
       function     getinfo(options){
                    let city = options.address.city;    //此处拿到位置相关信息
                    that.LocationCity = city;
                    console.log(options)
                  },
                  function (e){
                    that.LocationCity = '定位失败';
                    console.log('定位失败')
                  },
                  {provider: 'baidu'}
                )
              })
        },
    }    
  • 相关阅读:
    正则表达式
    javascript if(条件)------------条件中可以使用的值
    maven配置
    获取中文日期
    Oracle无安装客户端安装方法
    Eclipse org.eclipse.compare plug-in
    Differences or similarities between Java and C++
    Java Programming Guidelines
    Native Method
    Object in Java same as pointer
  • 原文地址:https://www.cnblogs.com/FACESCORE/p/13150732.html
Copyright © 2020-2023  润新知