반응형
배열을 비교할 때 항목 표시/숨김
제 고민은 다음과 같습니다.
- 나는 가지고 있다.
tags
체크박스의 목록을 작성하기 위해 루프하는 데 사용되는 배열입니다. - 나는 가지고 있다
selectTags
선택한 태그를 저장합니다.태그가 체크/체크 해제될 때마다 이 배열이 업데이트됩니다. - 나는 가지고 있다.
images
다음과 같이 이미지 URL 및 이미지 태그를 저장하는 객체:
days : {
day1 : {
image1: {
url : '',
tags: ['tag1', 'tag2']
},
image2: {
url : '',
tags: ['tag1']
},
},
day2 : {
image1: {
url : '',
tags: ['tag3']
},
image2: {
url : '',
tags: ['tag1']
},
}
}
루프 컴포넌트 내에서 다음 작업을 수행하여 이미지를 표시합니다.
<figure v-for="(image, index) in images" :key="index">
<img :src="image['url']" alt="">
</figure>
선택한 태그에 따라 이미지를 숨기거나 표시해야 합니다.
해결책을 찾은 것 같아
<figure
v-for="(image, index) in images"
:key="index"
v-show="selectTags.filter(item => image['tags'].indexOf(item) > -1).length"
>
<img :src="image['url']" alt="">
</figure>
이게 최선의 방법인지 모르겠어요.그래서 제안을 환영합니다.
언급URL : https://stackoverflow.com/questions/59089451/show-hide-items-when-comparing-arrays
반응형
'source' 카테고리의 다른 글
[Vue warn] :속성 또는 메서드가 인스턴스에서 정의되지 않았지만 렌더링 중에 참조됩니다. (0) | 2022.08.30 |
---|---|
Vue JS 체크박스를 바인드하는 방법? (0) | 2022.08.30 |
ANTLR: 간단한 예가 있나요? (0) | 2022.08.30 |
vue js의 소품을 사용하여 하위 구성 요소의 속성을 업데이트하려면 어떻게 해야 합니까? (0) | 2022.08.30 |
범위 외의 vue.js 컴포넌트 데이터를 변경하는 방법 (0) | 2022.08.30 |