chore(client): fix #8858
This commit is contained in:
parent
30bdfde4cc
commit
a50b1d69a1
2 changed files with 12 additions and 0 deletions
|
@ -66,6 +66,7 @@ export class Router extends EventEmitter<{
|
||||||
private currentKey = Date.now().toString();
|
private currentKey = Date.now().toString();
|
||||||
|
|
||||||
public currentRoute: ShallowRef<RouteDef | null> = shallowRef(null);
|
public currentRoute: ShallowRef<RouteDef | null> = shallowRef(null);
|
||||||
|
public navHook: ((path: string) => boolean) | null = null;
|
||||||
|
|
||||||
constructor(routes: Router['routes'], currentPath: Router['currentPath']) {
|
constructor(routes: Router['routes'], currentPath: Router['currentPath']) {
|
||||||
super();
|
super();
|
||||||
|
@ -192,6 +193,10 @@ export class Router extends EventEmitter<{
|
||||||
}
|
}
|
||||||
|
|
||||||
public push(path: string) {
|
public push(path: string) {
|
||||||
|
if (this.navHook) {
|
||||||
|
const cancel = this.navHook(path);
|
||||||
|
if (cancel) return;
|
||||||
|
}
|
||||||
const beforePath = this.currentPath;
|
const beforePath = this.currentPath;
|
||||||
this.navigate(path, null);
|
this.navigate(path, null);
|
||||||
this.emit('push', {
|
this.emit('push', {
|
||||||
|
|
|
@ -65,6 +65,13 @@ import { $i } from '@/account';
|
||||||
import { i18n } from '@/i18n';
|
import { i18n } from '@/i18n';
|
||||||
import { mainRouter } from '@/router';
|
import { mainRouter } from '@/router';
|
||||||
|
|
||||||
|
if (deckStore.state.navWindow) {
|
||||||
|
mainRouter.navHook = (path) => {
|
||||||
|
os.pageWindow(path);
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
const isMobile = ref(window.innerWidth <= 500);
|
const isMobile = ref(window.innerWidth <= 500);
|
||||||
window.addEventListener('resize', () => {
|
window.addEventListener('resize', () => {
|
||||||
isMobile.value = window.innerWidth <= 500;
|
isMobile.value = window.innerWidth <= 500;
|
||||||
|
|
Loading…
Reference in a new issue