아래와 같이 v-for를 사용하여 이 itemList를 html로 렌더링하고, 각 항목의 active를 통해 이 항목에 해당하는 html을 표시(v-show)할지 여부를 제어합니다.
그런데 이렇게 이벤트 메소드를 통해 Item을 선택하고 itemList를 변경하면 dom이 업데이트되지 않나요? ? ?
某草草2017-06-12 09:31:44
제공해주신 데이터 형식에 따라 시도해 보았는데 코드는 다음과 같습니다
`<p id="app">
<li v-for="(item,index) in itemList" v- on:click="selectItem(index)" v-if="item.active">
</li>
</p>
<script>
</script>`
阿神2017-06-12 09:31:44
JS 코드가 충분히 우아하지 않더라도 여기서는 객체 대신 배열을 사용하는 것이 더 적합하지만 DOM이 렌더링되지 않는 것은 잘못된 것이 아니라고 생각합니다. 여기서는 문제가 아닙니다. 선택 데이터의 단방향 흐름 문제와 같은 양식 컨트롤에 바인딩되어야 합니다.
巴扎黑2017-06-12 09:31:44
키 값 모드는 vue로 모니터링할 수 없으며, vue는 $set 메소드를 제공합니다. . 삭제에는
selectItem: function(index) {
},
typecho2017-06-12 09:31:44
this.itemList.splice(index, 1, Object.sign({}, this.itemList[index], { active: true }))