【问题标题】:Vue Router Replace function still trigger created() lifecycle hookVue Router Replace 函数仍然触发 created() 生命周期钩子
【发布时间】:2022-01-07 12:38:11
【问题描述】:

我有一个包含多个标签的视图页面视图。当标签的索引更改时,我会更新。

这是当您单击“信息”选项卡时 this.$router.replace({query: { section: 'Info'} })

我想看到的是 - myUrl/10/section=Info 当我移动到详细信息选项卡时 - myUrl/10/section=Detail

但它仍然会触发 created() 函数和页面 - 重新加载。 这是这个组件的路由器部分

            path: ":id/",
            component: AdminOrganizationDetailComponent,
            name: "csm.organizations.detail",
          }

:id 是一个参数 - 我没有在此处分配与查询相关的任何内容。

【问题讨论】:

    标签: vue.js vue-router


    【解决方案1】:

    您的网址必须看起来像 myUrl/10?section=Info,您可以这样做:

    this.$router.replace('myUrl',{params:{id: 10},query: { section: 'Info'} });
    

    但我更喜欢使用嵌套路由,你可以阅读它here

    【讨论】:

    • 此部分在同一组件下。我不确定嵌套路由是否会有所帮助,因为我不会转到其他页面。我只想更新网址而不刷新页面
    猜你喜欢
    • 2020-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-23
    • 2021-03-26
    • 2021-09-19
    • 1970-01-01
    相关资源
    最近更新 更多