返回

不再迷路,微信小程序地图配置助你轻松出行

前端

引入地图组件

在你的微信小程序项目中,首先需要引入地图组件。这是通过在你的小程序代码中添加以下代码来完成的:

import map from '@tencent/maps-react';

配置腾讯地图SDK

为了使用腾讯地图SDK,你首先需要在腾讯地图官网上注册一个账号并获取API密钥。然后,你可以在你的小程序代码中添加以下代码来配置SDK:

map.config({
  key: '你的API密钥'
});

使用地图组件

现在你已经可以开始使用地图组件了。你可以通过在你的小程序代码中添加以下代码来创建地图:

<map id="map" latitude="39.90923" longitude="116.397428" scale="16" markers={[{
  id: 'marker1',
  latitude: '39.90923',
  longitude: '116.397428',
  title: '我的位置'
}]} />

这段代码将创建一个地图,并在地图上显示一个标记。你可以在markers数组中添加更多标记,以在地图上显示多个地点。

解析腾讯地图坐标

如果你想在地图上显示一个腾讯地图坐标,你可以使用map.getLatLng()方法来解析坐标。例如,以下代码将解析一个腾讯地图坐标并在地图上显示一个标记:

map.getLatLng({
  location: '39.90923,116.397428',
  success: function (res) {
    var marker = {
      id: 'marker2',
      latitude: res.latitude,
      longitude: res.longitude,
      title: '我的位置'
    };
    map.addMarker({
      marker: marker
    });
  }
});

定位

如果你想在地图上显示用户的当前位置,你可以使用map.getLocation()方法来获取用户的当前位置。例如,以下代码将获取用户的当前位置并在地图上显示一个标记:

map.getLocation({
  success: function (res) {
    var marker = {
      id: 'marker3',
      latitude: res.latitude,
      longitude: res.longitude,
      title: '我的位置'
    };
    map.addMarker({
      marker: marker
    });
  }
});

标记

你可以使用map.addMarker()方法在地图上添加标记。例如,以下代码将在地图上添加一个标记:

map.addMarker({
  marker: {
    id: 'marker4',
    latitude: '39.90923',
    longitude: '116.397428',
    title: '我的位置'
  }
});

你可以使用map.removeMarker()方法从地图上移除标记。例如,以下代码将从地图上移除一个标记:

map.removeMarker({
  markerId: 'marker4'
});

店铺信息

如果你想在地图上显示一个店铺的信息,你可以使用map.addInfoWindow()方法在地图上添加一个信息窗口。例如,以下代码将在地图上添加一个信息窗口,其中包含一个店铺的名称、地址和电话号码:

map.addInfoWindow({
  infoWindowId: 'info1',
  latitude: '39.90923',
  longitude: '116.397428',
  content: '<div><h1>店铺名称</h1><p>店铺地址:北京市海淀区中关村</p><p>店铺电话:010-12345678</p></div>'
});

更改选择店铺的标记尺寸大小

你可以使用map.setMarkerSize()方法来更改选择店铺的标记尺寸大小。例如,以下代码将将选择店铺的标记尺寸大小设置为32px:

map.setMarkerSize({
  markerId: 'marker2',
  size: 32
});

在地图中心点放一个可视化标记

你可以使用map.addMarkerImage()方法在地图中心点放一个可视化标记。例如,以下代码将在地图中心点放一个可视化标记:

map.addMarkerImage({
  imageId: 'image1',
  src: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png',
  latitude: '39.90923',
  longitude: '116.397428'
});

cover-view标签放置一个标记图片,定位到在地图大小的中心,自行调试

你可以使用cover-view标签放置一个标记图片,定位到在地图大小的中心。例如,以下代码将在地图中心点放置一个标记图片:

<cover-view style="position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);" id="marker5">
  <image src="https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png"></image>
</cover-view>

移动后获取地图中心点坐标

你可以使用map.getCenterLocation()方法来获取地图中心点的坐标。例如,以下代码将在地图中心点获取坐标:

map.getCenterLocation({
  success: function (res) {
    console.log(res.latitude, res.longitude);
  }
});