vue中組件的過(guò)渡動(dòng)畫(huà)及實(shí)現(xiàn)代碼
1. 和多個(gè)元素的過(guò)渡一樣,用組件來(lái)替換transition中包裹的標(biāo)簽
<style>
.fade-enter,
.fade-leave-to {
opacity: 0
}
.fade-enter-active,
.fade-leave-active {
transition: opacity 2s
}
</style>
</head>
<body>
<div id="demo">
<button @click="show = !show">click me</button>
<transition name="fade" mode="in-out">
<child-one v-if="show"></child-one>
<child-two v-else></child-two>
</transition>
</div>
<script>
Vue.component('child-one', {
template: `<div>child-one</div>`
})
Vue.component('child-two', {
template: `<div>child-two</div>`
})
new Vue({
el: '#demo',
data: {
show: true
},
})
</script>
2. 動(dòng)態(tài)組件:component組件 :is 屬性,來(lái)實(shí)現(xiàn)組件的過(guò)渡效果
<style>
.fade-enter,
.fade-leave-to {
opacity: 0
}
.fade-enter-active,
.fade-leave-active {
transition: opacity 2s
}
</style>
</head>
<body>
<div id="demo">
<button @click="handleClick">click me</button>
<transition name="fade" mode="in-out">
<component :is="type"></component>
</transition>
</div>
<script>
Vue.component('child-one', {
template: `<div>child-one</div>`
})
Vue.component('child-two', {
template: `<div>child-two</div>`
})
new Vue({
el: '#demo',
data: {
type: 'child-one'
},
methods:{
handleClick () {
this.type = this.type === 'child-one' ? 'child-two' : 'child-one'
}
}
})
</script>
PS:下面看下Vue過(guò)渡動(dòng)畫(huà)實(shí)現(xiàn)
實(shí)現(xiàn)一個(gè)點(diǎn)擊切換元素的隱藏和顯示狀態(tài)!
<div id="app">
<transition>
<p v-if="show">Hello World</p>
</transition>
<button @click="toggle">切換</button>
</div>
需要把加入動(dòng)畫(huà)的元素放在transition組件內(nèi),定義一個(gè)按鈕的切換方法
<script>
var app=new Vue({
el:"#app",
data:{
show:true
},
methods:{
toggle:function(){
this.show=!this.show;
}
}
})
</script>
給不同狀態(tài)下添加相應(yīng)的樣式
.v-enter,.v-leave-to{
opacity:0;
}
.v-enter-active,.v-leave-to{
color:#00BFFF;
transition: opacity 3s;
}
可以給transition添加一個(gè)name,如果name為"fade",則class前綴為指定的name
動(dòng)畫(huà)過(guò)程中類(lèi)名的變化

我們可以自定義類(lèi)名,在元素屬性中添加進(jìn)入狀態(tài) enter-active-class,和離開(kāi)狀態(tài)leave-active-class
總結(jié)
以上所述是小編給大家介紹的vue中組件的過(guò)渡動(dòng)畫(huà)及實(shí)現(xiàn)代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Vue入門(mén)之a(chǎn)nimate過(guò)渡動(dòng)畫(huà)效果
- vue實(shí)現(xiàn)列表滾動(dòng)的過(guò)渡動(dòng)畫(huà)
- 使用vue-router切換頁(yè)面時(shí)實(shí)現(xiàn)設(shè)置過(guò)渡動(dòng)畫(huà)
- Vue 解決路由過(guò)渡動(dòng)畫(huà)抖動(dòng)問(wèn)題(實(shí)例詳解)
- Vue運(yùn)用transition實(shí)現(xiàn)過(guò)渡動(dòng)畫(huà)
- Vue動(dòng)畫(huà)事件詳解及過(guò)渡動(dòng)畫(huà)實(shí)例
- 簡(jiǎn)單談?wù)剉ue的過(guò)渡動(dòng)畫(huà)(推薦)
- 解決vue的過(guò)渡動(dòng)畫(huà)無(wú)法正常實(shí)現(xiàn)問(wèn)題
- Vue中的基礎(chǔ)過(guò)渡動(dòng)畫(huà)及實(shí)現(xiàn)原理解析
- Vue中實(shí)現(xiàn)過(guò)渡動(dòng)畫(huà)效果實(shí)例詳解
相關(guān)文章
vue中的代碼如何進(jìn)行斷點(diǎn)調(diào)試
這篇文章主要介紹了vue中的代碼如何進(jìn)行斷點(diǎn)調(diào)試問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04
vue結(jié)合el-dialog封裝自己的confirm二次確認(rèn)彈窗方式
這篇文章主要介紹了vue結(jié)合el-dialog封裝自己的confirm二次確認(rèn)彈窗方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
vue實(shí)現(xiàn)文章評(píng)論和回復(fù)列表
這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)文章評(píng)論和回復(fù)列表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
Vue 實(shí)現(xiàn)創(chuàng)建全局組件,并且使用Vue.use() 載入方式
這篇文章主要介紹了Vue 實(shí)現(xiàn)創(chuàng)建全局組件,并且使用Vue.use() 載入方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08
vue?element表格某一列內(nèi)容過(guò)多,超出省略號(hào)顯示的實(shí)現(xiàn)
這篇文章主要介紹了vue?element表格某一列內(nèi)容過(guò)多,超出省略號(hào)顯示的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-01-01
解決vue.js提交數(shù)組時(shí)出現(xiàn)數(shù)組下標(biāo)的問(wèn)題
今天小編就為大家分享一篇解決vue.js提交數(shù)組時(shí)出現(xiàn)數(shù)組下標(biāo)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11
vue 基于element-ui 分頁(yè)組件封裝的實(shí)例代碼
這篇文章主要介紹了vue 基于element-ui 分頁(yè)組件封裝的實(shí)例代碼,代碼簡(jiǎn)單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-12-12

