goview_vue/src/utils/page.ts

72 lines
1.3 KiB
TypeScript
Raw Normal View History

import { ResultEnum } from '@/enums/httpEnum'
2021-12-18 16:36:43 +08:00
import { ErrorPageNameMap, PageEnum } from '@/enums/pageEnum'
import router from '@/router'
2021-12-18 16:36:43 +08:00
import { docPath, giteeSourceCodePath } from '@/settings/pathConst'
2021-12-14 16:41:43 +08:00
/**
* *
* @param pageName
2021-12-14 16:41:43 +08:00
*/
2021-12-21 14:57:31 +08:00
export const routerTurnByName = (pageName: string, isReplace?: boolean, windowOpen?: boolean) => {
if (windowOpen) {
const path = router.resolve({
name: pageName
})
openNewWindow(path.href)
return
}
if (isReplace) {
router.replace({
name: pageName
})
return
}
2021-12-14 16:41:43 +08:00
router.push({
name: pageName
})
}
2021-12-18 16:36:43 +08:00
/**
* *
* @param icon
* @returns
*/
export const redirectErrorPage = (code: ResultEnum) => {
if (!code) return false
const pageName = ErrorPageNameMap.get(code)
if (!pageName) return false
routerTurnByName(pageName)
}
/**
* * 退
*/
export const logout = () => {
routerTurnByName(PageEnum.BASE_LOGIN_NAME)
}
/**
2021-12-21 14:57:31 +08:00
* *
2021-12-18 16:36:43 +08:00
* @param url
*/
2021-12-21 14:57:31 +08:00
export const openNewWindow = (url: string) => {
window.open(url, 'blank')
2021-12-18 16:36:43 +08:00
}
/**
2021-12-21 14:57:31 +08:00
* *
2021-12-18 16:36:43 +08:00
* @param url
*/
2021-12-21 14:57:31 +08:00
export const openDoc = () => {
openNewWindow(docPath)
2021-12-18 16:36:43 +08:00
}
/**
2021-12-21 14:57:31 +08:00
* *
2021-12-18 16:36:43 +08:00
* @param url
*/
2021-12-21 14:57:31 +08:00
export const openGiteeSourceCode = () => {
openNewWindow(giteeSourceCodePath)
2021-12-18 16:36:43 +08:00
}
2021-12-21 14:57:31 +08:00