From 73cee06daa26c056131fb5ec78afd912dd9832f7 Mon Sep 17 00:00:00 2001 From: vben Date: Sun, 27 Dec 2020 23:33:33 +0800 Subject: [PATCH] fix(iframe): iframe loads early when closing multi-tabs --- CHANGELOG.zh_CN.md | 1 + src/components/Application/src/search/useMenuSearch.ts | 2 +- src/layouts/iframe/useFrameKeepAlive.ts | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md index 93b17f9a..1f6010d7 100644 --- a/CHANGELOG.zh_CN.md +++ b/CHANGELOG.zh_CN.md @@ -20,6 +20,7 @@ - 修复多语言配置 `Locale.show`导致配置不生效 - 修复路由类型错误 - 修复菜单分割时权限失效问题 +- 关闭多标签页时 iframe 提前加载 ## 2.0.0-rc.14 (2020-12-15) diff --git a/src/components/Application/src/search/useMenuSearch.ts b/src/components/Application/src/search/useMenuSearch.ts index ac15a2f4..e4a30769 100644 --- a/src/components/Application/src/search/useMenuSearch.ts +++ b/src/components/Application/src/search/useMenuSearch.ts @@ -146,7 +146,7 @@ export function useMenuSearch(refs: Ref, scrollWrap: Ref, emit('close'); } - useKeyPress(['enter', 'up', 'down'], (events) => { + useKeyPress(['enter', 'up', 'down', 'esc'], (events) => { const keyCode = events.keyCode; switch (keyCode) { case KeyCodeEnum.UP: diff --git a/src/layouts/iframe/useFrameKeepAlive.ts b/src/layouts/iframe/useFrameKeepAlive.ts index 11a25328..fb06a613 100644 --- a/src/layouts/iframe/useFrameKeepAlive.ts +++ b/src/layouts/iframe/useFrameKeepAlive.ts @@ -50,9 +50,10 @@ export function useFrameKeepAlive() { function hasRenderFrame(name: string) { if (!unref(getShowMultipleTab)) { - return true; + return router.currentRoute.value.name === name; } return unref(getOpenTabList).includes(name); } + return { hasRenderFrame, getFramePages, showIframe, getAllFramePages }; } -- GitLab