请教一个vue-router刷新问题

发布于 2022-09-11 17:19:19 字数 826 浏览 12 评论 0

我在其他页面this.$router.go('/')它会跳到Index(首页),我想home里v-header和v-sidebar组件数据也得重新刷新一下,home作为根组件各种跳转只会在他里面跳,home本身里面的组件并不会刷新,请问有没有办法,我在别的页面返回index的时候,连同home里的组件一起刷新,以下是我路由和home模版代码

 routes: [{
  path: '',
  component: Home,
  children: [{
      path: '/',
      component: Index,
      name: "Index",
    },
    {
      path: '/goods',
      component: GoodsRelease,
    } 
  ]
}]

home模版

<template>
  <div>
    <v-header></v-header>
    <div class="wrapper">
      <v-sidebar></v-sidebar>
      <div class="content">
        <transition name="slide-fade" mode="out-in">
          <router-view></router-view>
        </transition>
      </div>
    </div>
  </div>
</template>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

源来凯始玺欢你 2022-09-18 17:19:19

这么操作监听路由的变化:

watch: {
  $route: {
    handler: function(val, oldVal){
      console.log(val);
    },
    // 深度观察监听
    deep: true
  }
},
自由如风 2022-09-18 17:19:19

在 home 组件里监听 $route 的变化。

成熟的代价 2022-09-18 17:19:19

可以箭头路由变化 实现数据更新 :

 watch: {
   $route (to, from) {
     //对应数据更新操作
   }
 }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文