UNI-APP_开发小程序调用第三方地图app导航

// 没有在登录的时候获取自己的定位 而是点击事件 调用viewMapLocation()这个方法时获取了自己的定位 
//因考虑到用户拒绝获取自己的定位所以当用户再次点击后会唤起设置让用户打开定位
// 这里传入的三个参数分别是  要去的  经度 纬度 以及 地址信息
viewMapLocation(longitude, latitude, address) {
	//  这里因为我是子组件传参过来了导致 经纬度变成了String 类型所以进行了一次转换
	latitude = Number(latitude);
	longitude = Number(longitude);
	// 获取定位信息
	uni.getLocation({
		type: 'wgs84', //返回可以用于uni.openLocation的经纬度
		// 用户允许获取定位
		success: function(res) {
			console.log(res, '经纬度')
			if (res.errMsg == "getLocation:ok") {
				console.log(latitude)
				console.log(longitude)
				uni.openLocation({
					// 传入你要去的纬度
					latitude: latitude,
					// 传入你要去的经度
					longitude: longitude,
					// 传入你要去的地址信息 不填则为空
					address: address,
					// 缩放大小
					scale: 18,
					success: function() {
						console.log('success');
					}
				});
			}
		},
		// 用户拒绝获取定位后 再次点击触发
		fail: function(res) {
			console.log(res)
			if (res.errMsg == "getLocation:fail auth deny") {
				uni.showModal({
					content: '检测到您没打开获取信息功能权限,是否去设置打开?',
					confirmText: "确认",
					cancelText: '取消',
					success: (res) => {
						if (res.confirm) {
							uni.openSetting({
								success: (res) => {
									console.log('确定');
								}
							})
						} else {
							console.log('取消');
							return false;
						}
					}
				})
			}
		}
	});
},

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值