【发布时间】:2020-01-02 17:12:18
【问题描述】:
我的 Vue.js 组件中有这段代码:
mounted() {
if (localStorage.dobDate) {
this.form.dobDate = localStorage.dobDate;
}
if (localStorage.dobMonth) {
this.form.dobMonth = localStorage.dobMonth;
}
if (localStorage.dobYear) {
this.form.dobYear = localStorage.dobYear;
}
},
watch: {
"form.dobDate": {
handler: function(after, before) {
localStorage.dobDate = after;
},
deep: true
},
"form.dobMonth": {
handler: function(after, before) {
localStorage.dobMonth = after;
},
deep: true
},
"form.dobYear": {
handler: function(after, before) {
localStorage.dobYear = after;
},
deep: true
}
问你会发现它可能会变得非常重复,例如,如果我有一个很大的表格,我不想对每个字段都这样做。有没有办法可以让它更干燥?例如,有没有一种方法可以使表单中的任何字段更加动态?
【问题讨论】:
-
类似:['dobDate', 'dobMonth', 'dobYear'].forEach(e => {if (localStorage[e]) console.log(localStorage[e])}); .....
标签: javascript vue.js vuejs2 refactoring vuex