|
@@ -54,6 +54,7 @@ const router = createRouter({
|
|
|
|
|
|
|
|
// 如果路由有hash(锚点),滚动到对应元素
|
|
// 如果路由有hash(锚点),滚动到对应元素
|
|
|
if (to.hash) {
|
|
if (to.hash) {
|
|
|
|
|
+ console.log('to.hash', to.hash)
|
|
|
return new Promise((resolve) => {
|
|
return new Promise((resolve) => {
|
|
|
// 延迟执行,确保页面内容已加载
|
|
// 延迟执行,确保页面内容已加载
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
@@ -78,19 +79,22 @@ const router = createRouter({
|
|
|
|
|
|
|
|
// 路由守卫:确保每次路由变化时重新应用缩放策略
|
|
// 路由守卫:确保每次路由变化时重新应用缩放策略
|
|
|
router.afterEach((to, from) => {
|
|
router.afterEach((to, from) => {
|
|
|
|
|
+ // 如果有hash(锚点),延迟更长时间执行scaleManager,避免干扰滚动
|
|
|
|
|
+ const delay = to.hash ? 800 : 150
|
|
|
|
|
+
|
|
|
// 延迟执行,确保DOM已更新
|
|
// 延迟执行,确保DOM已更新
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
import('@/utils/scaleManager.js').then(({ scaleManager }) => {
|
|
import('@/utils/scaleManager.js').then(({ scaleManager }) => {
|
|
|
scaleManager.checkAndRestore()
|
|
scaleManager.checkAndRestore()
|
|
|
})
|
|
})
|
|
|
- }, 150)
|
|
|
|
|
|
|
+ }, delay)
|
|
|
|
|
|
|
|
// 再次检查,确保状态正确
|
|
// 再次检查,确保状态正确
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
import('@/utils/scaleManager.js').then(({ scaleManager }) => {
|
|
import('@/utils/scaleManager.js').then(({ scaleManager }) => {
|
|
|
scaleManager.checkAndRestore()
|
|
scaleManager.checkAndRestore()
|
|
|
})
|
|
})
|
|
|
- }, 500)
|
|
|
|
|
|
|
+ }, delay + 350)
|
|
|
})
|
|
})
|
|
|
|
|
|
|
|
export default router
|
|
export default router
|