Dans la documentation de Vue.js, vous trouverez un exemple comme ci-dessous:
var vm = new Vue({
el: '#demo',
data: {
firstName: 'Foo',
lastName: 'Bar',
fullName: 'Foo Bar'
},
watch: {
firstName: function (val) {
this.fullName = val + ' ' + this.lastName
},
lastName: function (val) {
this.fullName = this.firstName + ' ' + val
}
}
})
Le code ci-dessus est impératif et répétitif. Comparez-le avec une version de propriété calculée:
var vm = new Vue({
el: '#demo',
data: {
firstName: 'Foo',
lastName: 'Bar'
},
computed: {
fullName: function () {
return this.firstName + ' ' + this.lastName
}
}
})
Quelles sont les situations où les observateurs sont plus appropriés que les propriétés calculées? Comment devrais-je décider lequel choisir? La documentation continue à dire qu'il est plus "générique" mais ne dit pas vraiment son but.