代码优化
解构赋值----实例篇:
<script>
// 数组的解构赋值:
let a = ["单车", "高铁", "飞机", "火箭"];
let [dan, gao, fei, huo] = a;
console.log(dan);
console.log(gao);
console.log(fei);
console.log(huo);
// 对象的结构赋值:
let b = {
name: "单车",
money: "500",
ride: function () {
console.log("骑车");
},
};
let { name, money, ride } = b;
console.log(name);
console.log(money);
console.log(ride);
ride();
</script>
例一:
待优化代码:
let account = res.data.data.account;
let name = res.data.data.name;
let userType = res.data.data.userType;
let isAdmin = res.data.data.isAdmin;
let info = {
account: account,
name: name,
userType: userType,
isAdmin: isAdmin
};
使用 解构赋值 简化一下:
let { account, name, userType, isAdmin } = res.data.data;
let info = { account, name, userType, isAdmin };
例二
待优化代码:
this.moneyDialogRuleForm.payAccount = this.$parent.payAccount;
this.moneyDialogRuleForm.remindOptions = this.$parent.remindOptions;
this.moneyDialogRuleForm.payAccountRemind = this.$parent.payAccountRemind;
this.moneyDialogRuleForm.balance = this.$parent.balance;
this.moneyDialogRuleForm.balanceRemind = this.$parent.balanceRemind;
使用 解构赋值:
const { payAccount,remindOptions,payAccountRemind,balance,balanceRemind } = this.$parent
this.moneyDialogRuleForm = { ...this.moneyDialogRuleForm,
payAccount,remindOptions,payAccountRemind,balance,balanceRemind }
使用 ES6 的 Object.assign() 优化后,只要一行代码:
以下方法功能有缺陷:可以获取值,但无法设置值…
this.moneyDialogRuleForm = Object.assign({}, this.$parent);
完毕!是不是没那么冗余了~