uniapp - 微信跳转至半屏的使用

微信小程序之间的半屏跳转 - uni.openEmbeddedMiniProgram(OBJECT)

点击uniapp跳转半屏使用的文档说明

在uniapp的开发项目中,开发者需要在全局配置manifest.json-->mp-weixin节点下添加embeddedAppIdList字段并声明需要半屏跳转的小程序,若不配置将切换为普通的小程序跳转小程序;(半屏的兼容性,如果不符合条件则自动转换为全屏的形式跳转)

配置示例:

javascript 复制代码
// manifest.json
{
		"mp-weixin" : {
		   "embeddedAppIdList": ["wxe5f52902cf4de896"]//需要半屏跳转的小程序appid
		}
	}

而在代码中的使用示例:

javascript 复制代码
uni.openEmbeddedMiniProgram({
	appId: '',
	path: 'pages/index/index?id=123',
	extraData: {
		'data1': 'test'
	},
	success(res) {
    // 打开成功
	}
})

使用限制

使用过程有以下限制,若不符合以下所有条件将被自动切换为普通的(全屏)小程序跳转小程序,不影响用户使用:

  1. 被半屏跳转的小程序需要通过来源小程序的调用申请,开发者可在 小程序管理后台「设置」-「第三方设置」-「半屏小程序管理」板块发起申请,最多可以申请10个小程序
  2. 3.1版本以下基础库,被半屏打开的小程序需要在app.json的embeddedAppIdList字段中声明;
  3. 当前小程序需为竖屏;
  4. 被半屏跳转的小程序需为非个人主体小程序(不含小游戏)。

在后台的配置:
点击进入小程序管理后台的登录

在以上的配置中,即可使用跳转半屏api的调用;

在此基础上也可封装一个方法的使用,在api可调用,但配置未完成的情况下,调用openEmbeddedMiniProgram的半屏的不生效,并自动转换为全屏的形式;

注:半屏跳转必须是事件的@tap/@click的跳转,不能是模态框(uni.showModal的确认/取消事件)的点击事件调用,模态框的事件调用半屏则默认是全屏的跳转

javascript 复制代码
// method.js
export function openEmbeddedMiniProgram(data) {
    let openMiniProgram = wx.navigateToMiniProgram;
     // canIUse检查openEmbeddedMiniProgram在此场景是否可用
    if (uni.canIUse('openEmbeddedMiniProgram')) {
        openMiniProgram = wx.openEmbeddedMiniProgram;
    }
    openMiniProgram(data);
}

// main.js
import Vue from 'vue';
import { openEmbeddedMiniProgram } from './method.js';
Vue.prototype.$openEmbeddedMiniProgram = openEmbeddedMiniProgram;


// 调用的事件
this.$openEmbeddedMiniProgram({
    appId: '需要跳转小程序的appid',
    path: '需要跳转小程序的指定路径/'
});

官方的呈现效果

相关推荐
一点晖光1 天前
微信小程序输入框光标从中间删除跳到最后bug解决
微信小程序·uniapp·ios光标
济南壹软网络科技有限公司1 天前
国际盲盒电商新范式:深度剖析 V4 系统的全球化云原生架构
uni-app·盲盒源码·国际盲盒源码·盲盒开源源码·多语言盲盒源码
小皮虾1 天前
护航隐私!小程序纯前端“证件加水印”:OffscreenCanvas 全屏平铺实战
前端·javascript·微信小程序
白宇横流学长1 天前
基于SpringBoot医院复查开药网站和微信小程序的设计
spring boot·后端·微信小程序
项目題供诗1 天前
微信小程序黑马优购(项目)(七)
微信小程序·小程序
2501_915918411 天前
HTTPS 端口深度解析,443 并不是唯一入口,理解 TLS 流量行为与抓包策略
网络协议·http·ios·小程序·https·uni-app·iphone
2501_916008891 天前
iOS 开发者工具全景图,构建从编码、调试到性能诊断的多层级工程化工具体系
android·ios·小程序·https·uni-app·iphone·webview
走,带你去玩1 天前
uniapp live-pusher + 腾讯云直播
前端·javascript·uni-app
qq_12498707531 天前
基于微信小程序的家电维修平台的设计与实现(源码+论文+部署+安装)
微信小程序·小程序·毕业设计
2501_915921431 天前
从需求到上架,现代 iOS 开发流程的工程化方法论
android·ios·小程序·https·uni-app·iphone·webview