uniapp+google map不显示

背景需求

需要在uniapp中接入google地图,研究了一番,都没有找到合适的,现在说一下教程。

效果图

前期工作

这两点缺一不可,否则你啥也看不到。

1、电脑安装L-O-U梯

用于访问G-OO-G-LE的API或者创建google map key。

2、手机安装L-O-U梯

用于显示google地图。我就是手机上没安装,以为电脑安装了就可以代理,谁知道花了一下午时间,最后才突然想起来,手机也需要安装。

开发教程

1、配置文件

 

2、index.vue


                
### 实现 UniApp 地图组件中的选点功能 在 UniApp 中实现地图选点功能主要依赖于腾讯地图 API 和相关插件的支持。通过集成这些工具,可以方便地实现在地图上选取特定地点的功能。 #### 准备工作 为了能够顺利使用腾讯地图的服务,在项目开始前需完成必要的准备工作: - 注册并登录腾讯云账号,创建应用并获取相应的 key[^2]。 - 安装所需的地图 SDK 或者加载器来引入地图服务。对于非 Google Maps 的其他服务商(如本案例中的腾讯),则需要安装 `@googlemaps/js-api-loader` 这样的专用包[^3]。 #### 创建页面结构 定义一个简单的页面布局用于展示地图以及处理用户的交互操作: ```html <template> <view class="container"> <!-- 显示地图 --> <map id="myMap" :longitude="center.longitude" :latitude="center.latitude"></map> <!-- 用户点击按钮触发选点事件 --> <button type="primary" @click="chooseLocation">选择位置</button> <!-- 输出所选地址信息 --> <text v-if="selectedAddress">{{ selectedAddress }}</text> </view> </template> ``` #### 编写 JavaScript 逻辑 接下来编写 Vue.js 方法以响应用户行为,并与腾讯地图 API 进行通信: ```javascript <script> export default { data() { return { center: { longitude: 0, latitude: 0 }, // 初始中心坐标 selectedAddress: '' // 所选地址描述 } }, onLoad(options) { this.initMap(); }, methods: { async initMap() { const res = await new Promise((resolve, reject) => { qqmapsdk.reverseGeocoder({ success(res){ resolve(res); }, fail(err){ console.error('初始化失败', err); reject(err); } }); }); let location = res.result.location; Object.assign(this.center, location); }, chooseLocation() { uni.chooseLocation({ success: (res) => { this.selectedAddress = `${res.name}(${res.address})`; this.center = { ...this.center, ...res }; }, fail: () => { console.log('取消选择'); } }) } } } </script> ``` 此代码片段展示了如何利用 `qqmapsdk` 对象来进行逆地理编码查询从而设置初始视图的位置;同时也包含了当用户按下“选择位置”按钮时调用的函数 `chooseLocation()` ,该函数会弹出原生的选择界面让用户挑选具体的地方,并更新界面上的相关数据[^1]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

renkai721

谢谢您的打赏!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值