无法将路由分配给 vue.js 中的弹出对话框
P粉786800174
P粉786800174 2023-09-05 23:14:08
[Vue.js讨论组]
<p>我正在尝试将路由分配给我使用 vue.js 中的对话框组件制作的自定义弹出窗口,但在使其工作时遇到了一些麻烦。我已经搞砸了很多,老实说,我对如何完成这项工作感到很困惑。这是我的路线文件:</p> <pre class="brush:php;toolbar:false;">routes: [ { path: &quot;/&quot;, name: &quot;landing&quot;, component: LandingView, children: [ { path: &quot;/register&quot;, component: RegistrationForm, }, ], },</pre> <p>我有一个登陆页面,在该登陆页面内,我正在使用 RegistrationForm 组件,该组件包含在我制作的自定义对话框组件内,如下所示:</p> <pre class="brush:php;toolbar:false;">&lt;teleport to=&quot;body&quot;&gt; &lt;dialog-modal v-if=&quot;isOpenRegister&quot; @close=&quot;isOpenRegister = false&quot;&gt; &lt;RegistrationForm @open-login=&quot;(isOpenRegister = false), (isOpenLogin = true)&quot; @close-dialog=&quot;isOpenRegister = false&quot; /&gt; &lt;/dialog-modal&gt; &lt;/teleport&gt;</pre> <p>我只想在用户单击该弹出窗口时为其分配一条路由。因此,当用户单击注册按钮并激活弹出窗口时,我希望它是 http://localhost:5173/register,而不是现在没有路由,因为它只是 http://localhost:5173。如果这是一个令人困惑的问题,我很抱歉,请尽力解释它,提前致谢!</p>
P粉786800174
P粉786800174

全部回复(1)
P粉790187507

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

<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>
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号