Vuejs2 如何以编程方式实现这一点

Vuejs2 如何以编程方式实现这一点,vuejs2,Vuejs2,我正在vue.js应用程序中执行以下代码。我希望通过编程的方式来减少代码大小 display_input(valu) { if(valu == 'editName') { this.editName = true this.editAddress = false this.editTelephone = false this.editEmail

我正在vue.js应用程序中执行以下代码。我希望通过编程的方式来减少代码大小

display_input(valu) {
            if(valu == 'editName') {
                this.editName = true
                this.editAddress = false
                this.editTelephone = false
                this.editEmail = false
            }
            if(valu == 'editAddress') {
                this.editName = false
                this.editAddress = true
                this.editTelephone = false
                this.editEmail = false
            }
            if(valu == 'editTelephone') {
                this.editName = false
                this.editAddress = false
                this.editTelephone = true
                this.editEmail = false
            }
            if(valu == 'editEmail') {
                this.editName = false
                this.editAddress = false
                this.editTelephone = false
                this.editEmail = true
            }
        },

使用以下各项,可将其全部压缩为:

display_input(valu) {
    this.editName = valu == 'editName'
    this.editAddress = valu == 'editAddress'
    this.editTelephone = valu == 'editTelephone'
    this.editEmail = valu == 'editEmail'
}

使用以下各项,可将其全部压缩为:

display_input(valu) {
    this.editName = valu == 'editName'
    this.editAddress = valu == 'editAddress'
    this.editTelephone = valu == 'editTelephone'
    this.editEmail = valu == 'editEmail'
}

这是我能想到的最短的方法,如果你添加了任何属性,你就不需要改变它

display_input(valu) {
    Object.keys(this).forEach(key => {
        this[valu] = valu == key
    })
}

这是我能想到的最短的方法,如果你添加了任何属性,你就不需要改变它

display_input(valu) {
    Object.keys(this).forEach(key => {
        this[valu] = valu == key
    })
}