반응형
Vue.js 컴포넌트의 프로펠러 변경을 감시하는 방법
이미지 파일 경로 배열을 컴포넌트에 전달하고 있습니다.다른 어레이를 사용할 경우 Vue.js 컴포넌트의 프로포넌트 변경을 감시하는 가장 좋은 방법은 무엇일까요?
부트스트랩 카르셀을 사용하고 있기 때문에 어레이가 변경되면 첫 번째 이미지로 리셋하고 싶습니다.알기 쉽게 하기 위해 코드 예를 다음과 같이 줄였습니다.
Vue.component('my-images', {
props: ['images'],
template: `
<section>
<div v-for="(image, index) in images">
{{index}} - <img :src="image"/>
</div>
</section>
`
});
<template>
<div>
{{count}}</div>
</template>
<script>
export default {
name: 'test',
props: ['count'],
watch: {
'$props':{
handler: function (val, oldVal) {
console.log('watch', val)
},
deep: true
}
},
mounted() {
console.log(this.count)
}
}
</script>
다음과 같이 하십시오.
Vue.component('my-images', {
props: ['images'],
computed: {
imagesComputed: function () {
// just an example of processing `images` props
return this.images.filter((each, index) => index > 0);
}
},
template: `
<section>
<div v-for="(image, index) in imagesComputed">
{{index}} - <img :src="image"/>
</div>
</section>
`
});
그리고 타이프 스크립트의 예
@Prop()
options: any[];
@Watch('options', {immediate: true})
optionsChanged(newVal: any[]) {
console.log('options changed ', newVal);
}
언급URL : https://stackoverflow.com/questions/42999287/how-to-watch-prop-change-in-vue-js-component
반응형
'programing' 카테고리의 다른 글
Vuex에서 한 번의 작업으로 두 가지 상태 관리 (0) | 2022.07.10 |
---|---|
Laravel Vue Vue Router 이력 모드 (0) | 2022.07.10 |
Android에서 문자열을 URI로 변환 (0) | 2022.07.10 |
64 비트 Android 장치에서 32 비트 네이티브 라이브러리를 사용하는 방법 (0) | 2021.01.17 |
두 개의 다른 테이블에 두 개의 count (*) 결과를 함께 추가하려면 어떻게합니까? (0) | 2021.01.17 |