vue重置表单的几种方法

像下面这种我们常见的表单数据,我们新增或则编辑完怎么把他们重置为空字符串或则空数组

       

let info =  {
    "id": "bc46ab8b340e11ed9f0478aa8211faf4",
    "name": "河庄6巡区",
    "parentId": "ahsdjh2hlashd123jhlahdsh1234h1h",
    "no": "6",
    "unionNo": "null-6",
    "category": "联勤巡防大队",
    "status": "free",
    "leaderId": null,
    "leaderName": "夫子庙",
    "leaderMobile": "176*****638",
    "sex": '男',
    "hobby": null,
    "longitude": 19727.12938123,
    "latitude": 213812731.2381278,
    "areaCode": "0033000100040006000000000000000",
    "areaName": "南京路",
    "carNum": 123,
    "ebikeNum": 321,
    "resources": [
        {
            "type": "口罩",
            "num": 1000
        }
    ],
    "child": null
}

 第一种

        一个一个赋值为空字符串或则空数组,当然这种很麻烦,适合那种只有三五个表单数据的对象

 第二种

        这种适合对象下面都是字符串的  通知把value置为空字符串或则null

 var student = {
        name: "hsl",
        age: 25,
        sex: "男",
        mobile: '1873****2837'
      };
      for (var key in student) {
            student[key] = ''
      }

   第三种 (吐血推荐)

                Object.assign(this.$data.info, this.$options.data.call(this).info)

data () {
    return {
      info: {
        "id": "bc46ab8b340e11ed9f0478aa8211faf4",
        "name": "河庄6巡区",
        "parentId": "ahsdjh2hlashd123jhlahdsh1234h1h",
        "no": "6",
        "unionNo": "null-6",
        "category": "联勤巡防大队",
        "status": "free",
        "leaderId": null,
        "leaderName": "夫子庙",
        "leaderMobile": "176*****638",
        "sex": '男',
        "hobby": null,
        "longitude": 19727.12938123,
        "latitude": 213812731.2381278,
        "areaCode": "0033000100040006000000000000000",
        "areaName": "南京路",
        "carNum": 123,
        "ebikeNum": 321,
        "resources": [
          {
             "type": "口罩",
             "num": 1000
          }
        ],
       "child": null
     }
  }
}
  Object.assign(this.$data.info, this.$options.data.call(this).info)
  this.$options.data.call(this).info 这个就是你在data下面初始化的这个目标对象
  this.$data.info  这个是你当前的目标对象
  Object.assign(target, ...sources) 对象合并,返回一个目标对象
     参数:target--->目标对象

           source--->源对象

     返回值:target,即目标对象

  我们这里做的就是,、目标对象和源对象有重名属性的情况下,源对象的属性会覆盖目标对象的属性,正        
  是这一点我们刚好可以做到重置表单的作用,前提是目标对象所需要的值都需要给一个初始化的值      
     


      info: {
        "id": "",
        "name": "",
        "parentId": "",
        "no": "",
        "unionNo": "",
        "category": "",
        "status": "",
        "leaderId": ,
        "leaderName": "",
        "leaderMobile": "",
        "sex": '',
        "hobby": ,
        "longitude": .,
        "latitude": ,
        "areaCode": "",
        "areaName": "",
        "carNum": ,
        "ebikeNum": ,
        "resources": [
          {
             "type": "",
             "num": 
          }
        ],
       "child": null
     }



          第三种使用还是很方便的,但是前提你要在data这个对象下面把你需要的值给初始化一下,切记不要偷懒不写初始值,这样合并对象的时候才会把你所有值给重置为你初始值的状态

        

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值