关于vue3项目路由跳转问题?

在vue3项目中,当我从一个页面(首页)跳转到另一个页面(详情页)时,详情页中的元素距离顶部的距离不能正确算出来(在setup中执行计算的方法),而当我刷新详情页时可以正确算出,请问如何解决这个问题:
关于vue3项目路由跳转问题?
路由界面:
关于vue3项目路由跳转问题?
首页中点击跳转:
关于vue3项目路由跳转问题?
详情页中获取元素高度:
关于vue3项目路由跳转问题?
调整获取位置后还是一样:
关于vue3项目路由跳转问题?
需求已解决,问题未解决


回答:

可能是路由进去时没有DOM完全渲染好就获取就需要调整一下位置, 也可能是因为获取的方法有问题, 需要补充一下代码

刷新后没有报错, 而且正常说明逻辑上是没有语法问题的
关于vue3项目路由跳转问题?
这个reactive不知道是做什么的不过看着你是在setup里面获取的
关于vue3项目路由跳转问题?
下面是vue3的生命周期:

  • setup() 钩子是在组件中使用组合式 API 的入口
  • setup中没有this
  • setup函数只会在组件初始化的时候执行一次
  • setup函数在beforeCreate生命周期钩子执行之前执行
    从中可以看到此时DOM没有生成, 因此获取DOM的相关数据应该是在第二个黑框的钩子函数里面onMounted, 根据你的写法可以这样:

    <script lang="ts">

    // 一定要先导入

    import { onMounted } from 'vue'

    export default {

    setup() {

    onMounted(() => {

    // DOM处理

    })

    }

    }

    </script>

    关于vue3项目路由跳转问题?

以上是 关于vue3项目路由跳转问题? 的全部内容, 来源链接: utcz.com/p/933645.html

回到顶部