1.判断一下是不是在微信环境

2.微信环境调用微信自带的地图导航

3.h5环境跳转去高德地图

    guide() {
let self = this;
console.log("self.lat", self.lat, self.lng, self.partnerAddress);
var ua = window.navigator.userAgent.toLowerCase();
console.log("ua", ua.match(/micromessenger/i) == "micromessenger");
if (ua.match(/micromessenger/i) == "micromessenger") {
if (self.partnerAddress && self.partnerAddress != "") {
// 打开内置地图
jWeixin.openLocation({
latitude: Number(self.lat), // 纬度,浮点数,范围为90 ~ -90
longitude: Number(self.lng), // 经度,浮点数,范围为180 ~ -180。
name: self.partnerAddress, // 位置名
address: self.partnerAddress, // 地址详情说明
scale: 24, // 地图缩放级别,整型值,范围从1~28。默认为最大
infoUrl: "", // 在查看位置界面底部显示的超链接,可点击跳转
fail: (error) => {
console.log("error---", error);
},
});
} else {
console.log('暂不知道该位置',暂不知道该位置)
}
} else {
if (self.partnerAddress && self.partnerAddress != "") {
//景点位置partnerAddress 景点经纬度lng lat
var lng = self.lng;
var lat = self.lat;
// 高德地图
if (self.customBrowserVersion().android) {
window.location.href =
"androidamap://viewMap?sourceApplication=appname&poiname=" +
self.partnerAddress +
"&lat=" +
lat +
"&lon=" +
lng +
"&dev=0";
//判断是否跳转
setTimeout(function () {
let hidden =
window.document.hidden ||
window.document.mozHidden ||
window.document.msHidden ||
window.document.webkitHidden;
if (typeof hidden == "undefined" || hidden == false) {
//调用高德地图
window.location.href =
"https://uri.amap.com/marker?position=" +
lng +
"," +
lat +
"&name=" +
self.partnerAddress;
}
}, 2000);
} else if (self.customBrowserVersion().ios) {
window.location.href =
"iosamap://viewMap?sourceApplication=appname&poiname=" +
self.partnerAddress +
"&lat=" +
lat +
"&lon=" +
lng +
"&dev=0";
//判断是否跳转
setTimeout(function () {
let hidden =
window.document.hidden ||
window.document.mozHidden ||
window.document.msHidden ||
window.document.webkitHidden;
if (typeof hidden == "undefined" || hidden == false) {
//调用高德地图
window.location.href =
"https://uri.amap.com/marker?position=" +
lng +
"," +
lat +
"&name=" +
self.partnerAddress;
}
}, 2000);
}
} else {
console.log('暂不知道该位置',暂不知道该位置)
}
}
},

在uni-app中调用高德地图去导航的更多相关文章

  1. android: 在APP中显示高德地图SDK

    一.搭建环境 参考资料:http://lbs.amap.com/api/android-sdk/guide/create-project/android-studio-create-project  ...

  2. Ionic2系列——在Ionic2中使用高德地图

    之前讲过了如何在Ionic2中使用第三方库,因为第三方库必须针对TypeScript提供相应的声明文件——即d.ts文件,才能被TypeScript正确识别并编译.好在大多数的第三方库已经有了定义文件 ...

  3. Vue-Cli 3.0 中配置高德地图

    vue 中使用高德地图有两种方式 一.vue-amap 组件 官网: https://elemefe.github.io/vue-amap/#/ 开始的时候是打算用这个组件做地图功能的,但是尝试之后存 ...

  4. vue调用高德地图:vue-amap

    前言:之前没有接触过页面调用地图的项目,某次面试,老板要求我用vue-amap调用高德地图,回家以后,我去网上查了一些案例和教程,看似很简单的引入调用,我却整整弄了一宿,还没弄出来!!!百般无奈之下, ...

  5. Vue组件篇——Vue3.0中使用高德地图

    VUE-CLI 3.0 中配置高德地图 在项目开发中,地图组件 1.首先,需要注册高德开放平台的账号,并在[应用管理]页面[创建新应用],为应用添加Key值 高德开放平台:https://lbs.am ...

  6. uni app中使用自定义图标库

    项目中难免会用到自定义图标,那在uni app中应该怎么使用呢? 首先, 将图标目录放在static资源目录下: 在main.js中引入就可以全局使用了 import '@/static/icon-o ...

  7. 关于Android studio调用高德地图的简单流程和要点

    一,账号与Key的申请 注册成为高德开发者需要分三步: 第一步,注册高德开发者:第二步,去控制台创建应用:第三步,获取Key. 前2步都比较简单,这里说下第三步. 获取Key 1.进入控制台,创建一个 ...

  8. Android中调用百度地图

    一.调用百度地图 --第一种方法 1.下载百度地图SDK SDK可以拆分下载,需要使用那一部分功能就下载相应包含的SDK,如下图 核心的的jar 和so包,放在工程中的libs目录下 2.申请key ...

  9. vue 调用高德地图

    一. vue-amap,一个基于 Vue 2.x 和高德地图的地图组件 https://elemefe.github.io/vue-amap/#/ 这个就不细说了,按照其文档,就能够安装下来. 二. ...

  10. java调用高德地图api实现通过ip定位访问者的城市

    所需东西:高德地图的key 注意:这个key是 web服务的key  和js的key不是一个key(若没有则自行创建,创建教程在文末) 高德地图的api文档:https://lbs.amap.com/ ...

随机推荐

  1. 【EBS】总账YTD\PTD等概念

    PTD 余额是指给定期间账户中的净活动.周期通常等于一个月. YTD 余额是指账户从时间开始到给定期间结束的净活动. 例如 假设您在 1 月 15 日声明了一项业务.您在 1 月 15 日从现金账户中 ...

  2. Linux修改主机名hostname

    红帽系: [root@f112 ~]# vi /etc/sysconfig/network # Created by anaconda # 加上一行 HOSTNAME=f111 [root@f112 ...

  3. macOS NSView改变frame后会出现黑色残留,应付的办法是不在drawRect上修改重新initWithFrame一下就行

    黑色部分就是残留.是因为绘制后保留了轨迹. 解决办法是不在drawRect中做处理重新写NSView,新增方法 initWithFrame - (void)drawRect:(NSRect)dirty ...

  4. mysql 取出分组后价格最高的数据

    如何用mysql 取出分组后价格最高的数据 ? 看到这个问题,就想到了用 max 函数和 group by 函数,先 group by 然后取得 max, 但是这样真的可以吗? 不可以 ! 为什么?  ...

  5. 1.java 开始

    WelloWorld 随便新建一个文件夹,存放代码 新建一个java文件 编写代码 编译javac java文件,生成一个class文件 运行class文件,java class 可能遇到的情况 每个 ...

  6. 关闭Windows form窗体

    原文https://www.cnblogs.com/HappyEDay/p/5713707.html  在c#中退出WinForm程序包括有很多方法 this.Close(); Application ...

  7. Java实现发红包模拟

    1.先画界面 package com.cmk; import javax.swing.*; import java.awt.*; import java.awt.event.KeyAdapter; i ...

  8. Job for nfs-server.service failed because the control process exited with error code. See "systemctl status nfs-server.service" and "journalctl -xe" for details.

    问题: 解决:

  9. 利用position: absolute最简便实现水平居中的css样式

    html <div class="horizontal-center"></div> css .horizontal-center { left: 50%; ...

  10. TCP 协议之三次握手(一)

    (声明:本文是阅读此文的总结笔记) 面试中对于该知识点的考察频繁,一般作为面试的暖场问题,你能够答出多少,答得多深刻,条理多清晰,给面试官的印象真的很重要. 三次握手的过程 TCP是面向连接的,全双工 ...