반응형
감시 어레이에서 인덱스를 취득하다
어레이의 변경을 감시하는 vue 애플리케이션이 있습니다.잘 되고 있어요.그러나 워치 콜백은 이전/새 값으로만 전달되기 때문에 변경된 어레이 항목의 인덱스를 얻는 방법을 잘 모르겠습니다.
데모: http://jsfiddle.net/q3zd4fmv/
간단한 예:
new Vue({
el: '#demo',
data: {
things: [{foo:1}, {foo:2}]
},
watch: {
things: {
handler: function (val, oldVal) {
alert('a thing changed')
},
deep: true
}
},
methods: {
change: function () {
this.things[0].foo = 5
}
}
})
아쉽게도 개봉 후로는 아닙니다.인수 파괴와 커스텀워치 기능의 조합을 사용하면, 그것을 실행할 수 있는 것을 실현할 수 있습니다.예를 들어,
new Vue({
el: '#demo',
data: {
things: [{foo:1}, {foo:2}]
},
methods: {
change: function (...args) {
let [thing, after, before] = args;
console.log(thing);
}
},
mounted: function(){
this.things.forEach(thing => {
this.$watch(() => thing, this.change.bind(null, thing))
});
}
})
언급URL : https://stackoverflow.com/questions/57008485/get-index-from-watched-array
반응형
'programing' 카테고리의 다른 글
ios_base의 중요성::sync_with_stdio(false), cin.tie(NULL); (0) | 2022.07.28 |
---|---|
Vue-loader 구문 오류:js 파일에서 구성 요소를 가져올 때 예기치 않은 토큰 {이(가) 발생했습니다. (0) | 2022.07.28 |
Vue.js 범용 다이내믹 컴포넌트 렌더링 (0) | 2022.07.28 |
VueJ를 사용하여 텍스트 영역의 일부 문자를 차단하려면 어떻게 해야 합니까? (0) | 2022.07.28 |
컴포넌트 내부의 단일 지점에서 vuejs 오류를 캡처하는 방법 (0) | 2022.07.28 |