Vue清空对象
JS清空对象
使用字面量方法指向一个新的对象:
var obj = {
    name: 'Lee',
    age: 20
};
obj = {};var obj = {
    name: 'Lee',
    age: 20
};
for(var key in obj){
    delete obj[key];
}Vue清空对象
使用对象字面量,不推荐使用。
<div id="app">
    <button @click="deleteInfo">删除</button>
    姓名:{{ message.name }},
    年龄:{{ message.age }}
</div>var app = new Vue({
    el: '#app',
    data: {
        message:{
            name:"Lee",
            age: 20
        }
    },
    methods:{
        deleteInfo:function(){
               this.message = {};
        }
    }
})使用 Vue.delete:
<div id="app">
    <button @click="deleteInfo">删除</button>
    姓名:{{ message.name }},
    年龄:{{ message.age }}
</div>var app = new Vue({
    el: '#app',
    data: {
        message:{
            name:"Lee",
            age: 20
        }
    },
    methods:{
        deleteInfo:function(){
            for(let key of Object.keys(this.message)){
                Vue.delete(this.message,key);
            }
        }
    }
})某一个对象清空vule值,保留key
其中就是将一个对象的属性copy到另一个对象
在vue中
- 
this.$data获取当前状态下的data
- 
this.$options.data()获取该组件初始状态下的data
所以,下面就可以将初始状态的data复制到当前状态的data
实现重置效果:
Object.assign(this.$data, this.$options.data())
当然,如果你只想重置data中的某一个对象或者属性:(一般用于表单清空数据)
this.form = this.$options.data().form
某一个对象清空vule值,保留key
Object.keys(form).forEach((key) => (form[key] = ''))
以上为个人经验,希望能给大家一个参考,也希望大家多多支持Devmax。