Demo: http://jsfiddle.net/e9e2bw6v/2/ We have list, which is under watching. In watch we just replace text:null to text: 'some text'. When we add an item, and later we clear list, we see error. We have html: `<div v-if="list.length">` `<div v-if="list[0].text">` `{{list[0].text}}` `</div>` `</div>` If we remove second condition, we will not have error. If you replace 2 conditions to 1 `<div v-if="list.length && list[0].text">`, we will not have error. I cannot explain this, but its wrong. P.S. Sory for bad english.