From 14f68616ac979f4d69269a364814dd4340b2b450 Mon Sep 17 00:00:00 2001 From: fxy060608 Date: Sun, 15 Mar 2020 12:43:04 +0800 Subject: [PATCH] build:v3 --- packages/uni-app-plus/dist/index.v3.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/uni-app-plus/dist/index.v3.js b/packages/uni-app-plus/dist/index.v3.js index 4554fdce0..34b1011fe 100644 --- a/packages/uni-app-plus/dist/index.v3.js +++ b/packages/uni-app-plus/dist/index.v3.js @@ -8402,9 +8402,16 @@ var serviceContext = (function () { const pages = getCurrentPages(); const len = pages.length; + let callonShow = false; + if (len >= 1) { // 前一个页面是非 tabBar 页面 const currentPage = pages[len - 1]; if (!currentPage.$page.meta.isTabBar) { + // 前一个页面为非 tabBar 页面时,目标tabBar需要强制触发onShow + // 该情况下目标页tabBarPage的visible是不对的 + // 除非每次路由跳转都处理一遍tabBarPage的visible,目前仅switchTab会处理 + // 简单起见,暂时直接判断该情况,执行onShow + callonShow = true; pages.reverse().forEach(page => { if (!page.$page.meta.isTabBar && page !== currentPage) { page.$remove(); @@ -8430,7 +8437,7 @@ var serviceContext = (function () { // 查找当前 tabBarPage,且设置 visible getCurrentPages(true).forEach(page => { if (('/' + page.route) === path) { - if (!page.$page.meta.visible) { + if (!page.$page.meta.visible || callonShow) { page.$vm.__call_hook('onShow'); } page.$page.meta.visible = true; -- GitLab