遇到一个场景,打开弹窗组件的时候传一个对象,在组件内部调接口的时候追加这个查询参数
//打开dialog
chosecarrier() {
this.carrierCardDialog = true
let obj = { isCarrier: '1' }
this.$refs.carriertDialog.getcarrierdata(obj)
},
//dialog内部
getcarrierdata(val) {
let obj = this.queryParams
obj = { ...val, ...this.queryParams }
getaccBdCustomList(obj).then(res => {
if (res.code == 200) {
this.costForm.standTableList = res.data.rows
this.total = res.data.total
}
})
},
合并对象方法:
1、解构对象
obj = { ...val, ...this.queryParams }
2、拷贝对象
obj=object.assign(this.queryParams,val)
3、object.keys
var keysArr = Object.keys(val)
keysArr.forEach(item => {
obj[item] = val[item]
})
4、for…in
for (const key in val) {
obj[key] = val[key]
}
5、判断对象是否为空
es6中使用Object.keys(obj)
var data = {};
var arr = Object.keys(data);
console.log(arr.length == 0); // true 为空, false 不为空
将json对象转化为json字符串,再判断该字符串是否为"{}"
var data = {};
var b = (JSON.stringify(data) == "{}");
console.log(b); //true 为空, false 不为空