首页 > 解决方案 > 如何在Vue路由器中处理带有“/”的URL并重定向到其他组件

问题描述

我有这种形式的网址/#/isms/register/VYOYHDpg/oBkYmHlxtB8mQ==

我已vue-router配置为:

{
  path: "/isms/register",
  component: Layout,
  children: [
    {
      path: ":code",
      name: "WOTC URL page",
      component: ISMSHome,
      props: true
    }
  ]
}

在我的ISMSHome component

created() {
    alert(this.$route.params.code)
  }

但是,路线永远不会到达ISMSHome component,它无法重定向到应用程序中的任何地方。

我现在无法更改生成该 URL 的服务器代码,但我必须做一些工作以将浏览器从register页面重定向到另一个页面。

我试图将 url 参数从 props 传递给另一个组件。但是,这也没有奏效。

标签: vuejs2

解决方案


我会尝试这样的事情:

{
  path: "/isms/register/:code",
  component: Layout,
  children: [
    {
      path: "",
      name: "WOTC URL page",
      component: ISMSHome,
      props: true
    }
}

注意:请记住,您还需要在组件<router-view />内部添加Layout


推荐阅读