首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法为vue.js中的弹出对话框分配路由

问无法为vue.js中的弹出对话框分配路由
EN

Stack Overflow用户
提问于 2022-10-25 10:19:38
回答 1查看 25关注 0票数 0

我正在尝试为使用vue.js中的对话框组件的自定义弹出分配一条路由,但我在使其工作时遇到了一些小问题。我经常乱七八糟,老实说,我对如何使这件事发挥作用感到很困惑。这是我的路线文件:

代码语言:javascript
复制
routes: [
    {
      path: "/",
      name: "landing",
      component: LandingView,
      children: [
        {
          path: "/register",
          component: RegistrationForm,
        },
      ],
    },

我有一个登陆页面,在那个登陆页面中,我使用的是RegistrationForm组件,它封装在我制作的自定义Dialog组件中,如下所示:

代码语言:javascript
复制
    <teleport to="body">
      <dialog-modal v-if="isOpenRegister" @close="isOpenRegister = false">
        <RegistrationForm
          @open-login="(isOpenRegister = false), (isOpenLogin = true)"
          @close-dialog="isOpenRegister = false"
        />
      </dialog-modal>
    </teleport>

当用户点击这个弹出窗口时,我只想给它分配一个路径。因此,现在没有路由,因为它只是http://localhost:5173,我希望它是http://localhost:5173/register,当用户单击注册按钮,弹出窗口被激活。如果这是个令人困惑的问题,我很抱歉,我已经尽力解释了,谢谢!

EN

回答 1

Stack Overflow用户

发布于 2022-10-25 10:35:06

应该在某些方法中处理重定向,例如:

代码语言:javascript
复制
<teleport to="body">
  <dialog-modal v-if="isOpenRegister" @close="isOpenRegister = false">
    <RegistrationForm
      @open-login="openRegister"
      @close-dialog="isOpenRegister = false"
    />
  </dialog-modal>
</teleport>

<script>
 methods: {
   openRegister() {
     this.$router.push({ path: '/register' })
     // other method logic
   }
 }
</script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74192521

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档