解決vue 退出動(dòng)畫無效的問題
遇到一個(gè)問題:給模態(tài)框加入退出動(dòng)畫,進(jìn)入的動(dòng)畫效果是有的,可是退出的動(dòng)畫就沒有了。
寫個(gè)簡(jiǎn)單的結(jié)構(gòu):
<div v-show='warning'><br><transition name='warning'><br><div v-show=“warning” class='warning-modal'><br><p>請(qǐng)登錄</p><br></div><br></transition><br></div>
.mask是遮罩層,.warning-modal是顯示模態(tài)框的內(nèi)容。
如果像上面的結(jié)構(gòu),會(huì)遇到我上述的問題。因?yàn)閣arning-modal包裹在.mask遮罩層里面。但是.mask沒有動(dòng)畫,一點(diǎn)擊關(guān)閉,.mask沒有動(dòng)畫,就直接消失了,warning-modal跟著.mask消失,它的退出動(dòng)畫我們也就看不到了。如果把transition放在外面。
<transition name='warning'> <div v-show='warning'><div v-show=“warning” class='warning-modal'><p>請(qǐng)登錄</p></div> </div></transition>
很顯然 ,遮罩層也會(huì)跟著提醒框有動(dòng)畫!
我的解決方法的做法是加兩個(gè)transition
<transition name='mask'> <div v-show='warning'> <transition name='warning'> <div v-show=“warning” class='warning-modal'> <p>請(qǐng)登錄</p> </div></transition></div></transition>//然后給maskde 退出動(dòng)畫增加transition-delay屬性。.mask-leave-active{ transition:all 1s; transition-delay:1s;}
補(bǔ)充知識(shí):vue利用三目運(yùn)算符綁定class
通過三目運(yùn)算符來綁定class是一種比較常見的操作
需要注意的是要在data里面聲音下class的名稱
<p :class='isIncrse?incrseP:downP'>環(huán)比<i></i>{{item.num}}</p>data() { return { isIncrse: true, incrseP: ’incrseP’, downP: ’downP’ }}
.downP { color: red;}.incrseP { color: pink;}
以上這篇解決vue 退出動(dòng)畫無效的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. vue實(shí)現(xiàn)web在線聊天功能2. JavaScript實(shí)現(xiàn)頁(yè)面動(dòng)態(tài)驗(yàn)證碼的實(shí)現(xiàn)示例3. JavaEE SpringMyBatis是什么? 它和Hibernate的區(qū)別及如何配置MyBatis4. Springboot 全局日期格式化處理的實(shí)現(xiàn)5. SpringBoot+TestNG單元測(cè)試的實(shí)現(xiàn)6. 完美解決vue 中多個(gè)echarts圖表自適應(yīng)的問題7. 解決Android Studio 格式化 Format代碼快捷鍵問題8. 在Chrome DevTools中調(diào)試JavaScript的實(shí)現(xiàn)9. Python使用urlretrieve實(shí)現(xiàn)直接遠(yuǎn)程下載圖片的示例代碼10. Java使用Tesseract-Ocr識(shí)別數(shù)字
