From 1235978ab23740dfb11e3de7ac26a7d10a4899dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=97=A0=E6=9C=A8?= Date: Tue, 24 Aug 2021 20:59:08 +0800 Subject: [PATCH] fix: `useRedo` called duplicate may cause exception MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复useRedo的不当调用可能导致异常的问题 fixed: #1121 --- CHANGELOG.zh_CN.md | 1 + src/hooks/web/usePage.ts | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/CHANGELOG.zh_CN.md b/CHANGELOG.zh_CN.md index 59791bfab64..e5aa05fb8f2 100644 --- a/CHANGELOG.zh_CN.md +++ b/CHANGELOG.zh_CN.md @@ -14,6 +14,7 @@ - 修复部分封装组件在使用插槽时报错的问题 - 修复`useECharts`的`theme`参数不起作用的问题 - 修复`Token`失效时,按 F5 刷新页面可能会出现页面加载异常的问题 + - 修复`useRedo`的不当调用可能会导致重定向`path`异常的问题 ## 2.7.1(2021-08-16) diff --git a/src/hooks/web/usePage.ts b/src/hooks/web/usePage.ts index eab05c9fad7..ffe1ebc5472 100644 --- a/src/hooks/web/usePage.ts +++ b/src/hooks/web/usePage.ts @@ -42,6 +42,10 @@ export const useRedo = (_router?: Router) => { const { query, params = {}, name, fullPath } = unref(currentRoute.value); function redo(): Promise { return new Promise((resolve) => { + if (name === REDIRECT_NAME) { + resolve(false); + return; + } if (name && Object.keys(params).length > 0) { params['_redirect_type'] = 'name'; params['path'] = String(name);