可以通过使用 baidu-map 或者 amap 插件来实现 App 地图定位,两个插件分别基于百度地图API高德地图API

效果图: 

一、使用amap插件: 

1、安装amap插件:插件市场中搜索并安装"amap"插件

2、在需要使用地图定位的页面中,导入并使用amap组件:

<template>
  <view>
    <amap :longitude="longitude" :latitude="latitude" style="width:100%;height:400rpx;"></amap>
    <view>{{locationInfo}}</view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      longitude: 0, // 经度
      latitude: 0, // 纬度
      locationInfo: '', // 位置信息
    }
  },
  mounted() {
    this.getLocation();
  },
  methods: {
    getLocation() {
      uni.getLocation({
        type: 'gcj02',
        success: (res) => {
          this.longitude = res.longitude;
          this.latitude = res.latitude;
          this.locationInfo = `经度:${res.longitude},纬度:${res.latitude}`;
        },
        fail: (res) => {
          console.log('获取位置信息失败', res);
        }
      });
    }
  }
}
</script>

二、使用baidu-map插件:(同amap插件

1、安装baidu-map插件:插件市场中搜索并安装"baidu-map"插件

2、使用baidu-map组件:

<template>
  <view>
    <baidu-map :longitude="longitude" :latitude="latitude" style="width:100%;height:400rpx;"></baidu-map>
    <view>{{locationInfo}}</view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      longitude: 0, // 经度
      latitude: 0, // 纬度
      locationInfo: '', // 位置信息
    }
  },
  mounted() {
    this.getLocation();
  },
  methods: {
    getLocation() {
      uni.getLocation({
        type: 'gcj02',
        success: (res) => {
          this.longitude = res.longitude;
          this.latitude = res.latitude;
          this.locationInfo = `经度:${res.longitude},纬度:${res.latitude}`;
        },
        fail: (res) => {
          console.log('获取位置信息失败', res);
        }
      });
    }
  }
}
</script>

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐