关于使用Object.assign为对象添加字段
基础定义:
在VUE中,常用的为对象添加属性的方式有三种:Vue.set(),this.$set(),Object.assign()。
语法:Object.assign( target,source);
Object.assign()方法用于对象的合并,将所有可枚举属性的值从一个或多个源对象(source)复制到目标对象(target),如果有相同的字段会覆盖掉,没有相同的字段则合并。该方法将返回目标对象。
简单来说,就是当你想为一个原有的对象添加新的属性,且新添加的属性也是可以被监听的,就可以使用这个API。
简单明了的代码示例:
const config1 = {
host: 'localhost',
port: '1000',
name: 'root',
pass: 'root',
test: 'test'
}
const config2 = {
host: 'http://chenchen.com',
port: '1103',
name: 'chenchen',
pass: 'cute',
test2: 'test2'
}
console.log(Object.assign(config1, config2));
输出为:
项目运用场景:
reserve() {
let target= JSON.parse(localStorage.getItem("reserveValue"));
let source= {
outTradeNo: this.payParam.outTradeNo
};
let reserveVM = Object.assign({},target,source);
Axios.post("/reserve/toDayReserveConfirm",reserveVM).then(res => {
if(res.data.ok){
goUrl("/views/reservSuccess/");
}else {
this.showTextToast(res.data.msg);
}
});
},
版权声明:本文为m0_44981797原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。