Vue.js 数组追加合并与对象追加合并【Object.assign()】

源码技巧4年前 (2021-02-26)19160


1、在Vue.js 中让数组追加合并通常使用的concat()方法,让对象属性追加合并而是使用Object.assign()

一、Vue.js实现数组追加合并与对象追加合并:

1、数组的追加合并:(假设data中有一个数组itemList{},我们要在数组中追加数据)

var vm = new Vue(){
	el:"",
	data(){
		sites:[]
	},
	created() {
		this.getSpecialData()
	}}	

我们在方法中将返回的数据合并到数组中:(不重要的信息我这里都删除了)

getSpecialData:function () {
    jQuery.ajax({
        url: "",
        data: {},
        type: 'get',
        dataType:"json",
        success: function (res){
            if(res.code=="0" && res.data.items.length!=0){
                for(var i=0;i<res.data.items.length;i++){
                    vm.sites = vm.sites.concat(res.data.items[i]); //核心代码
                }
            }
           }
    })
}

2、对象的追加合并:(假设data中有一个对象site,我们要在对象中追加属性)

var vm = new Vue(){
	el:"",
	data(){
		site: {}
	},
	created() {
		this.getSpecialData()
	}}	

我们在方法中将返回的数据合并到对象中:(重点在Object.assign()的用法)

getSpecialData:function () {
    jQuery.ajax({
        url: "",
        data: {},
        type: 'get',
        dataType:"json",
        success: function (res){
            if(res.code=="0"){
                vm.site = Object.assign({},this.site,res.data.item); //核心代码
            }
           }
    })
}


“Vue.js 数组追加合并与对象追加合并【Object.assign()】” 的相关文章

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。