vue 单页面,提交表单后闪现表单页之前的页面

发布于 2022-09-11 16:35:30 字数 855 浏览 16 评论 0

出现场景: 微信内打开的 h5,vue 单页应用 , history 模式

流程描述:在微信内打开 h5 ,进入首页 -> 二级页面 -> 表单页 -> 在当前页面提交表单将数据传给第三方,此时问题来了,post 方式表单提交,在还未打开第三方页面的时候,表单页关闭并且回退到二级页面 -> 二级页面展示时间不到 1s 后,第三方页面打开

代码

<template>
    ...
    <form method="post"  :action="formData.url" id="postForm" style="display: none"; ref="form">
      <input type="hidden" name="name" v-model="formData.name">
      <input type="hidden" name="tel" v-model="formData.tel">
      <input type="hidden" name="req" v-model="formData.req">
    </form>
    ...
</template>
....
/* 通过接口获取数据,然后拿到数据提交到第三方 */
request({data}).then((res)=>{
    this.formData = res.data;
    /* 表单提交部分 */
    this.$nextTick(()=>{
        this.$refs.form.submit();
    })
})
......

期望结果:提交表单后直接跳转至第三方,不存在闪屏。此种问题只出现在了微信内。

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

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

发布评论

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

评论(1

鸢与 2022-09-18 16:35:30

微信内,原表单提交,提交地址为 ip 访问,改为域名访问后,问题不再复现。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文