您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關vue怎么實現模態框的通用寫法推薦的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
Vue是一款友好的、多用途且高性能的JavaScript框架,使用vue可以創建可維護性和可測試性更強的代碼庫,Vue允許可以將一個網頁分割成可復用的組件,每個組件都包含屬于自己的HTML、CSS、JavaScript,以用來渲染網頁中相應的地方,所以越來越多的前端開發者使用vue。
在看了element組件的源碼后發現,所有模態框其實實現方法都差不多,主要用到了vue在組件化上的雙向綁定。代碼:
<!--查看槽點對話框--> <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"> 模態框 </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里面的代碼,實現監聽數據變化,及時更新。所以在使用的時候就很方便了,在component注冊組件之后:
<g-key-dialog :visible.sync="keyDialogVisible"></g-key-dialog>
注:這里必須使用sync,要不是無法雙向綁定的
感謝各位的閱讀!關于“vue怎么實現模態框的通用寫法推薦”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。