微信小程序内嵌h5页面(uniapp写的),使用uni.openLocation无法打开页面问题

1.问题

微信小程序内嵌h5页面(uniapp写的),使用uni.openLocation打开地图页面后,点击该页面下方"到这里"按钮,显示无法打开。如下图:

3.解决方案

在内嵌h5中不使用uniapp的api打开地图,而在h5页面事件处理程序中去跳转新的小程序页面,在该新页面去使用微信小程序原生的api打开地图。具体代码如下:

(注意:从h5跳转该新的小程序页面,再点击该页面左上方返回按钮时,是会刷新该页面一次的。)

javascript 复制代码
// pages/location/location.js

Page({
  data: {
    needBack: false
  },
  
  onLoad: function (options) {
    const {longitude, latitude, name} = options;
    this.openLocation(longitude, latitude, name);
  },
  
  onShow: function() {
    // 从导航页退回的时候,就再次跳转回到之前webview的小程序页面,其实也就是该页面
    if (this.data.needBack) {
      wx.navigateBack();
    }
  },
  
  openLocation: function (longitude, latitude, name) {
    wx.openLocation({
      latitude: Number(latitude),
      longitude: Number(longitude),
      scale: 18,
      name,
      complete: () => {
        this.setData({needBack: true});
      }
    });
  }

});
相关推荐
阿凤217 小时前
uniapp运行到app端怎么打开文件
android·前端·javascript·uni-app
00后程序员张8 小时前
完整教程:如何将iOS应用程序提交到App Store审核和上架
android·macos·ios·小程序·uni-app·cocoa·iphone
00后程序员张8 小时前
iOS应用性能优化全解析:卡顿、耗电、启动与瘦身
android·ios·性能优化·小程序·uni-app·iphone·webview
大力水手~12 小时前
小程序模仿iphone苹果手机滑动选时间
智能手机·小程序
杰建云16712 小时前
小程序如何做裂变?
小程序·小程序制作
Front思12 小时前
解决 uniapp Dart Sass 2.0.0 弃用警告
前端·uni-app·sass
Evavava啊12 小时前
iOS微信小程序WebView中按钮背景渐变显示问题解决方案
ios·微信小程序·h5·渲染
阳光雨滴12 小时前
微信小程序使用canvas自定义富文本内容做图片分享
微信小程序·小程序
杰建云16713 小时前
小程序如何做活动?
小程序·小程序制作
这是个栗子13 小时前
【微信小程序问题解决】微信小程序全局 navigationBarTitleText 不起作用
微信小程序·小程序·导航栏