您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)vue怎么實(shí)現(xiàn)模態(tài)框的通用寫法推薦的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。
Vue是一款友好的、多用途且高性能的JavaScript框架,使用vue可以創(chuàng)建可維護(hù)性和可測試性更強(qiáng)的代碼庫,Vue允許可以將一個(gè)網(wǎng)頁分割成可復(fù)用的組件,每個(gè)組件都包含屬于自己的HTML、CSS、JavaScript,以用來渲染網(wǎng)頁中相應(yīng)的地方,所以越來越多的前端開發(fā)者使用vue。
在看了element組件的源碼后發(fā)現(xiàn),所有模態(tài)框其實(shí)實(shí)現(xiàn)方法都差不多,主要用到了vue在組件化上的雙向綁定。代碼:
<!--查看槽點(diǎn)對話框--> <template lang="html"> <transition name="el-fade-in-linear"> <div draggable="true" @drag="mouseDrag" @dragend="mouseDragend" : class="g-dialog-wrapper" v-show="myVisible"> <div class="g-dialog-header"> <div class="left"> 模態(tài)框 </div> <div class="right"> <i class="g-times-icon fa fa-times" @click="myVisible=false" aria-hidden="true"></i> </div> </div> <div class="g-dialog-container"> </div> </div> </transition> </template> <script> export default { props: { visible: Boolean }, created() { }, data() { return { myVisible: this.visible, }, computed: {}, methods: { }, components: {}, watch: { myVisible: function (val) { this.$emit('update:visible', val) }, visible: function (val) { this.myVisible = val } } } </script> <style lang="css" scoped> </style>
上面代碼主要的部分是watch里面的代碼,實(shí)現(xiàn)監(jiān)聽數(shù)據(jù)變化,及時(shí)更新。所以在使用的時(shí)候就很方便了,在component注冊組件之后:
<g-key-dialog :visible.sync="keyDialogVisible"></g-key-dialog>
注:這里必須使用sync,要不是無法雙向綁定的
感謝各位的閱讀!關(guān)于“vue怎么實(shí)現(xiàn)模態(tài)框的通用寫法推薦”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。