- var amapFile = require('../../libs/amap-wx.js');//如:..-/..-/libs/amap-wx.js
- Page({
- data: {
- markers: [],
- latitude: '',
- longitude: '',
- textData: {},
- dome:false
- },
- onLoad: function() {
- var that = this;
-
- wx.getLocation({
- type: 'wgs84',
- success: (res) => {
- console.log(res);
- that.setData({
- latitude: res.latitude,
- longitude: res.longitude
- })
- var marker = [{
- id: 1,
- latitude: res.latitude,
- longitude: res.longitude,
- iconPath: "../../images/marker.png",
- width: 22,
- height: 32,
- callout: {
- content: "你的位置\n换行内容",
- color: "#333333",
- fontSize: 13,
- borderRadius: 20,
- bgColor: "#ffffff",
- textAlign: "center" ,
- padding: 10,
- display: 'ALWAYS'
- }
- }]
- that.setData({
- markers: marker
- });
- that.setData({
- dome: true
- });
- },
- });
-
- },
- })
- <view class="map_container">
- <map class="map" id="map" longitude="{{longitude}}" latitude="{{latitude}}" scale="11" markers="{{markers}}" wx:if="{{dome}}"></map>
- </view>
- .map_container{
- position: absolute;
- top: 0;
- bottom: 0;
- left: 0;
- right: 0;
- width:750rpx;
- height: 100vh;
- }
- map{
- width:100%;
- height: 100%;
- }
遇到的问题:看上面的代码,大家可以发现,我的map是用if来控制的,这样是为了防止markers动态更新后map没反应,这里我的解决方法是直接重构,如果有其他大家欢迎大家在下面分享出来。