diff --git a/frontend/src/stores/browser.js b/frontend/src/stores/browser.js index a6575bc..b295a58 100644 --- a/frontend/src/stores/browser.js +++ b/frontend/src/stores/browser.js @@ -386,9 +386,10 @@ const useBrowserStore = defineStore('browser', { * @param {number} db * @param {string|number[]} [key] null or blank indicate that update tab to display normal content (blank content or server status) * @param {boolean} [clearValue] + * @param {boolean} [redirect] redirect to key detail tab * @return {Promise} */ - async loadKeySummary({ server, db, key, clearValue }) { + async loadKeySummary({ server, db, key, clearValue, redirect = true }) { try { const tab = useTabStore() if (!isEmpty(key)) { @@ -402,7 +403,7 @@ const useBrowserStore = defineStore('browser', { const k = nativeRedisKey(key) const binaryKey = k !== key tab.upsertTab({ - subTab: BrowserTabType.KeyDetail, + subTab: redirect === false ? null : BrowserTabType.KeyDetail, server, db, type, @@ -492,7 +493,7 @@ const useBrowserStore = defineStore('browser', { if (showLoading) { tab.updateLoading({ server, db, loading: true }) } - await this.loadKeySummary({ server, db, key, clearValue: true }) + await this.loadKeySummary({ server, db, key, clearValue: true, redirect: false }) await this.loadKeyDetail({ server, db, diff --git a/frontend/src/stores/tab.js b/frontend/src/stores/tab.js index f9b775a..875ab08 100644 --- a/frontend/src/stores/tab.js +++ b/frontend/src/stores/tab.js @@ -3,6 +3,7 @@ import { defineStore } from 'pinia' import { TabItem } from '@/objects/tabItem.js' import useBrowserStore from 'stores/browser.js' import { i18nGlobal } from '@/utils/i18n.js' +import { BrowserTabType } from '@/consts/browser_tab_type.js' const useTabStore = defineStore('tab', { /** @@ -179,6 +180,7 @@ const useTabStore = defineStore('tab', { }) { let tabIndex = findIndex(this.tabList, { name: server }) if (tabIndex === -1) { + subTab = subTab || BrowserTabType.KeyDetail const tabItem = new TabItem({ name: server, title: server, @@ -202,7 +204,7 @@ const useTabStore = defineStore('tab', { } else { const tab = this.tabList[tabIndex] tab.blank = false - tab.subTab = subTab + tab.subTab = subTab || tab.subTab // tab.title = db !== undefined ? `${server}/db${db}` : `${server}` tab.title = server tab.server = server