亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

Vue自定義全局彈窗組件操作

瀏覽:65日期:2022-12-10 16:19:16

寫在前面

頁面中會(huì)有很多時(shí)候需要彈窗提示,我們可以寫一個(gè)彈窗組件,但是如果每個(gè)頁面都引入這個(gè)組件,太麻煩了,所以我們將它變成全局組件,需要用的時(shí)候直接通過JS調(diào)用即可,不需要在每個(gè)頁面引入了

效果圖

Vue自定義全局彈窗組件操作

彈窗組件

新建一個(gè)彈窗的組件——popup.vue

<template> <transition name=’fade’> <!-- 蒙版 --> <div v-if='show' @touchmove.prevent> <div class='window'> <img :src='http://www.aoyou183.cn/bcjs/imgUrl' alt=''> <h1>{{title}}</h1> <p>{{content}}</p> <button @click='btnClick'>{{btnText}}</button> </div> <img @click='show = false' v-fb src='http://www.aoyou183.cn/pages/signin/dialog/images/關(guān)閉.png' alt=''> </div> </transition></template><script>export default { name: ’app’, data () { return { show: false, imgUrl: ’’, title: ’’, content: ’’, btnText: ’’, click: ’’ } }, created () { }, methods: { btnClick () { this.click() this.show = false } }}</script><style lang='less' scoped> @import '../../../assets/css/minx/minx'; @import '../../../assets/css/pixel/pixel'; // 漸變過渡 .fade-enter, .fade-leave-active { opacity: 0; } .fade-enter-active, .fade-leave-active { transition: opacity .35s; } // 全局彈窗 .mask { .fixed; z-index: 10; background:rgba(0,0,0,0.65); display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 75/75rem; .window{ height: 400/75rem; width: 100%; background: #fff; border-radius:8px; text-align: center; .shadow{ width: 270/75rem; margin-top: -90/75rem; } h1{ margin-top: 32/75rem; font-size:32/75rem; color:#f1300b; line-height:32/75rem; font-weight: 600; } p{ margin-top: 32/75rem; font-size:28/75rem; color:#222222; line-height:40/75rem; } button{ margin-top: 34/75rem; background:#f95644; border-radius:10px; width:23/75remx; height:64/75rem; font-size:28/75rem; color:#ffffff; } } .close{ width:60/75rem; height:60/75rem; margin-top: 40/75rem; } }</style>

popup.js文件

新建一個(gè)popup.js文件,寫方法

import Vue from ’vue’import Popup from ’./popup.vue’const PopupBox = Vue.extend(Popup)Popup.install = function (data) { let instance = new PopupBox({ data }).$mount() document.body.appendChild(instance.$el) Vue.nextTick(() => { instance.show = true // show 和彈窗組件里的show對(duì)應(yīng),用于控制顯隱 })}export default Popup

main.js引入popup.js

// 自定義全局彈窗組件import Vue from ’vue’import Popup from ’./components/dialog/popup’Vue.prototype.$popup = Popup.install

組件中使用方法

methods: { btnClick () { this.$popup({ imgUrl: require(’../../../static/images/shadow.png’), // 頂部圖片 title: ’我是標(biāo)題’, content: ’我是內(nèi)容’, btnText: ’我是按鈕’, click: () => { // 點(diǎn)擊按鈕事件 this.$router.push(’……’) } }) }}

方便以后自己使用,大家也可以參考哦,也希望大家多多支持好吧啦網(wǎng),謝謝~~

標(biāo)簽: Vue
相關(guān)文章:
主站蜘蛛池模板: 亚洲不卡| 国产亚洲一区二区精品 | 免费观看日本人成影片 | 在线观看免费国产视频 | 91制服丝袜在线 | 国产日韩欧美综合一区 | 日本a一级毛片免费观看 | 国产成人精品在线 | 亚洲国产精品网站久久 | 国产精品视频成人 | 香蕉tv亚洲专区在线观看 | 色综合合久久天天给综看 | 国产成本人三级在线观看网站 | 爱爱小视频在线看免费 | 欧美国产高清 | 久久久精品久久久久特色影视 | 欧美一区不卡二区不卡三区 | 国产精品亚洲第五区在线 | 黄色大片久久 | 黄色免费看看 | 三级全黄a| 精选国产门事件福利在线观看 | 免费香蕉视频国产在线看 | 国产福利视频一区二区 | 人人草在线视频 | 嘿嘿嘿视频免费网站在线观看 | 国产一级淫片a免费播放口之 | 成人短视频在线观看 | 免费一看一级毛片 | 国产hs免费高清在线观看 | 菠萝菠萝蜜在线看7 | 一区二区三区网站在线免费线观看 | 亚洲欧美日韩在线一区 | 国产在线观看91精品2022 | 亚洲视频网站在线观看 | 永久福利盒子日韩日韩免费看 | 黄色生活一级片 | 欧美做a欧美 | 国产精品视频26uuu | 99国产精品九九视频免费看 | 日韩一级片|