出现一个问题,点击“注册”按钮页面进入注册表单后自动跳转回登录页面

来源:4-5 单页面应用Demo2(2)

CharlesLee

2019-02-09 19:23

<template>
    <div>
        <form v-if="!isReg">
            用户名:
            <input type="text" v-model="name">
            密码:
            <input type="text" v-model="password">
            <button type="button" @click="login()">登录</button>
            <button type="button" @click="reg()">注册</button>
        </form>
        <form v-else>
            用户名:
            <input type="text" v-model="name">
            密码:
            <input type="text" v-model="password">
            再次输入密码:
            <input type="text">
            <button @click="addUser()">确定</button>
            <button @click="cancel()">取消</button>
        </form>
    </div>
 </template>
 <script>
 export default {
     name: "Login",
     data () {
         return {
             isReg: false,
             name: '',
             password: '',
             repeat: ''
         }
     },
     methods: {
         login () {
             this.$router.push('/home/list')
         },
         reg () {
             this.isReg = true
         },
         cancel () {
             this.isReg = false
         },
         addUser () {
             localStorage.setItem("name", this.name)
             localStorage.setItem("password", this.password)
         }
      }
   }
</script>
<style>
</style>

请问老师如何解决bug?

写回答 关注

4回答

  • Brian
    2019-02-11 11:14:03

    1. form标签的action属性会进行跳转,所以form不给action标签,

    2. 在button上的type不使用submit,因为submit会默认执行action属性;

    3. 在form标签、click上加入prevent修饰符,参考:修饰符事件修饰符


  • weibo_格林哇咔哇咔66_0
    2019-07-04 13:03:32

    第一个form表单中的button标签更换为div标签就不会有上诉问题了

  • 慕容5293102
    2019-03-14 18:00:39

    我也是这样 但是不知道为啥。代码和视频里一模一样的 自己会跳转回去


  • CharlesLee
    2019-02-09 19:58:43

    已找到问题所在,是因为form标签所导致的,换成div标签就没有问题了,但是不知道为什么会产生这问题

3小时速成 Vue2.x 核心技术

带你快速学习最流行的前端框架vue2.x的核心技术

82559 学习 · 487 问题

查看课程

相似问题