3***@qq.com
3***@qq.com
  • 发布:2021-01-06 13:48
  • 更新:2021-01-06 14:00
  • 阅读:3369

uniapp map的scale属性绑定失效

分类:uni-app

使用uniapp开发微信小程序,地图组件,对scale属性进行了绑定。但只要对地图进行了拖动或者缩放后就无法使用该绑定属性控制了。
代码如下:

<map v-if="mapIsShow" ref="myMap" id="myMap" :show-location="true" :scale="mapScale" @markertap="onMarkerTap" :markers="marker"  
         :latitude="latitude" :longitude="longitude" :style="{width: '100%', height: windowHeight}">  

return {  
                windowHeight: '1000rpx',  
                latitude: '22.25591',  
                longitude: '110.98626',  
                marker: [],  
                mapScale: 14,  
                conditionsNum: 0,  
                mapIsShow: true,  
                constructList: [],  
                accidentList: [],  
                eventList: [],  
                // 0是显示定位附近,1是显示全省  
                sizeType: 0  
            }
2021-01-06 13:48 负责人:无 分享
已邀请:
7***@qq.com

7***@qq.com - 江江123

如果你的scale一直是没有变化的,那就变化缩放,比如你定死了scale=14,那你改变大小在点击地图的时候,他是不会缩放的,只能动态改,比如你第一次点是14,滑到别的地方在点地图,scale不能是14。办法是判断第一次是是14,第2次点击是13.9就可以了

  • 3***@qq.com (作者)

    scale绑定了“mapScale”,初始化14。我设计了一个按钮给mapScale赋值7,一开始是有效果的,但只要手指拖动、缩放了地图后,这个绑定效果就没了

    2021-01-06 14:00

  • 7***@qq.com

    回复 3***@qq.com: 因为你赋值后,它就变成7了,7就是被定死了

    2021-01-06 14:05

  • 7***@qq.com

    回复 3***@qq.com: 加一个这个事件@tap,然后在这个事件里面写判断if(mapScale == 7){this. mapScale = 6.9}else{this. mapScale = 7}这样应该就是可以了。这是最简单的方法,其他办法我也不知道了。。。。。。。

    2021-01-06 14:11

  • 3***@qq.com (作者)

    回复 7***@qq.com: 可以了,谢谢!

    2021-01-06 16:17

  • 1***@qq.com

    回复 7***@qq.com: @tap 给map组件加?

    2021-06-09 15:50

  • 1***@qq.com

    回复 3***@qq.com: @tap 加哪了 大兄弟

    2021-06-09 15:51

  • 3***@qq.com (作者)

    回复 1***@qq.com: 你首先给mapScale赋值10,当你用手指缩放之后,地图的scale变了,但mapScale还是10,这个时候你mapScale= 10 是没有反应的,你可以mapScale = 6.99,这样就可以变化了

    2021-07-01 14:21

[已删除]

[已删除]

承接H5、小程序、APP等外包:

  1. 经验丰富,做过多种类型项目,有案例可看;
  2. 整个项目外包可以找我(小团队接单,面向客户、产品);
  3. 只需要前端部分也可以找我(个人接单,面向服务端合作伙伴);
  4. wechat(13070273424);

该问题目前已经被锁定, 无法添加新回复