Ответ
Нет, computed свойства во Vue.js предназначены только для чтения. Они автоматически пересчитываются при изменении зависимых реактивных данных, но напрямую их изменять нельзя.
Если нужно изменяемое значение, используйте data или ref (в Composition API).
Пример:
computed: {
fullName() {
return this.firstName + ' ' + this.lastName
}
}
// Попытка изменить вызовет ошибку
this.fullName = 'New Name' // Error!
Для двустороннего связывания можно использовать computed с геттером/сеттером:
computed: {
fullName: {
get() {
return this.firstName + ' ' + this.lastName
},
set(newValue) {
const [first, last] = newValue.split(' ')
this.firstName = first
this.lastName = last
}
}
}