2017-01-08 14 views
5

Mam obiektu vue takiego:Vue.js oglądać nieruchomość zagnieżdżona wewnątrz tablicy

var vm = new Vue({ 
      el: '#app', 
      data: { 
       items: [], 
       index: 0 
      }, 

      }); 

wewnętrzne elementy tablicy i będzie domagał przedmiotów, takich jak:

item1 = { 
    a: 1, 
    b: 'type', 
    c: '3.556' 
} 
... 
itemN = { 
    a: n, 
    b: 'type', 
    c: '5.226' 
} 

Potem zaktualizuje jedną z właściwość obiektu "c" i chciałbym ustawić watcher, który ostrzegłby mnie, gdy tylko jedna z tych właściwości się zmieni.

EDIT: Ja też chcę wiedzieć, poz czarownica zmieniła

Odpowiedz

0

Można użyć głęboki zegarek, ale ... to nie zapewnia łatwość sposób, aby określić, który element uległ zmianie.

... 
watch: { 
    items: { 
    handler: function (val, oldVal) { 

    }, 
    deep: true 
    } 
} 
... 

Jednym z możliwych obejściach wspomina this answer, Ideą tego rozwiązania jest to, aby otoczyć każdego elementu w składniku i słuchać zdarzenia z komponentu.

Możesz także przechowywać sklonowaną tablicę przedmiotów i aktualizować klona w module obsługi zegarka, możesz użyć tego klonu do filtrowania zmienionego elementu.