import { useWorktabStore } from '@/store/modules/worktab' import { isIframe } from './route' import { useSettingStore } from '@/store/modules/setting' import { IframeRouteManager } from '@/router/core' import { useCommon } from '@/hooks/core/useCommon' const setWorktab = (to) => { const worktabStore = useWorktabStore() const { meta, path, name, params, query } = to if (!meta.isHideTab) { if (isIframe(path)) { const iframeRoute = IframeRouteManager.getInstance().findByPath(to.path) if (iframeRoute?.meta) { worktabStore.openTab({ title: iframeRoute.meta.title, icon: meta.icon, path, name, keepAlive: meta.keepAlive, params, query }) } } else if (useSettingStore().showWorkTab || path === useCommon().homePath.value) { worktabStore.openTab({ title: meta.title, icon: meta.icon, path, name, keepAlive: meta.keepAlive, params, query, fixedTab: meta.fixedTab }) } } } export { setWorktab }