history.ts 1010 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. import store from '@/store'
  2. import { createHashHistory } from 'history'
  3. const history = createHashHistory()
  4. // 监听路由
  5. let routerLength = 0
  6. history.listen((_: any, listener: any) => {
  7. if (listener === 'PUSH') {
  8. routerLength += 1
  9. } else if (listener === 'POP') {
  10. if (routerLength >= 1) routerLength -= 1
  11. }
  12. store.dispatch({ type: 'layout/routerLength', payload: routerLength })
  13. })
  14. export default history
  15. let homeFlag = '课堂'
  16. // 2个不同模块的首页判断
  17. export const homeJudgeFu = () => {
  18. if (window.location.href.includes('exhi')) homeFlag = '展览'
  19. }
  20. // 去首页
  21. export const toHomeFu = () => {
  22. history.replace(homeFlag === '课堂' ? '/' : '/exhi')
  23. }
  24. // 判断是手机端还是pc端
  25. export const isMobileFu = () => {
  26. if (
  27. window.navigator.userAgent.match(
  28. /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i
  29. )
  30. ) {
  31. return true
  32. } else return false
  33. }