* TransitionGroup
- tag 속성에 애니메이션이 들어갈 HTML 태그 이름(p,ul,section..)을 지정한다
- name 속성은 이후에 추가할 css 클래스와 연관
- <li>태그에 :key 추가한다. 목록에 애니메이션을 적용하려면 <TransitionGroup> 안의 대상 태크에 :key 속성을 꼭 지정해야한다.
<TransitionGroup name="list" tag="ul">
<li v-for="(item,index) in propsdata" :key="item" class="shadow">
<font-awesome-icon icon="fa-solid fa-check" aria-hidden="true" class="checkBtn"/>
{{ item }}
<span class="removeBtn" type="button" @click="removeTodo(item, index)">
<font-awesome-icon icon="fa-solid fa-trash-alt"/>
</span>
</li>
</TransitionGroup>
--css
<style scoped>
ul {
list-style-type: none;
padding-left: 0px;
margin-top: 0;
text-align: left;
}
li {
display: flex;
min-height: 50px;
height: 50px;
line-height: 50px;
margin: 0.5rem 0;
padding: 0 0.9rem;
background: white;
border-radius: 5px;
}
.checkBtn {
line-height: 45px;
color: #62acde;
margin-right: 5px;
}
.removeBtn {
margin-left: auto;
color: #de4343;
}
.list-enter-active,
.list-leave-active {
transition: all 1s ease;
}
.list-enter-from,
.list-leave-to {
opacity: 0;
transform: translateY(30px);
}
</style>
'Web > vue' 카테고리의 다른 글
[vue] TODO App 만들기_1 (0) | 2023.05.01 |
---|---|
[vue] fontawesome 사용(아이콘) (0) | 2023.05.01 |
[vue] 뷰 CLI / 뷰 로더 웹팩(Webpack) (0) | 2023.04.30 |
[vue] Form 입력 바인딩 (v-model) (0) | 2023.04.29 |
[vue] vscode에 vue 셋팅 (0) | 2023.04.27 |