API
computed
Тип: { [key: string]: Function | { get: Function, set: Function } }
Подробности:
Вычисляемые свойства, которые будут подмешаны к экземпляру Vue. В геттерах и сеттерах this
будет указывать на экземпляр Vue.
Обратите внимание, при использовании стрелочной функции в определении вычисляемого свойства, this
не будет указывать на экземпляр компонента, но к нему можно получить доступ из первого аргумента функции:
computed: {
aDouble: vm => vm.a * 2
}
Вычисляемые свойства кэшируются и повторно вычисляются только при изменении реактивных зависимостей. Обратите внимание, если определённая зависимость выходит за область видимости экземпляра (т.е не реактивная), то вычисляемое свойство не будет обновляться.
Пример:
const vm = new Vue({
data: { a: 1 },
computed: {
// если свойство только возвращает данные, достаточно простой функции:
aDouble: function () {
return this.a * 2
},
// свойство и возвращает, и получает данные:
aPlus: {
get: function () {
return this.a + 1
},
set: function (v) {
this.a = v - 1
}
}
}
})
vm.aPlus // => 2
vm.aPlus = 3
vm.a // => 2
vm.aDouble // => 4
Last updated
Was this helpful?