真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

vue中怎么封裝一個(gè)彈出框組件

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)vue中怎么封裝一個(gè)彈出框組件,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

創(chuàng)新互聯(lián)專注于尖草坪網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供尖草坪營(yíng)銷型網(wǎng)站建設(shè),尖草坪網(wǎng)站制作、尖草坪網(wǎng)頁(yè)設(shè)計(jì)、尖草坪網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造尖草坪網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供尖草坪網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

1.你需要先建一個(gè)彈出框的模板:

//首先創(chuàng)建一個(gè)mack.vue


//寫js


//css

 .mack {
 position: fixed;
 width: 100%;
 height: 100%;
 overflow: hidden;
 top: 0;
 left: 0;
 background: rgba(21, 21, 21, 0.7);
 .font_b {
  font-size: 14/50rem;
  color: #231a2f;
 }
 .font_s {
  font-size: 12/50rem;
  color: #655a72;
 }
 .borderTop {
  border-top: 1/50rem solid #e4e4e4;
 }
 .mackWeb {
  background: #ffffff;
  width: 300/50rem;
  min-width: 300/50rem;
  margin: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  .title {
   text-align: center;
   padding: 15/50rem 15/50rem 0 15/50rem;
  }
  .mesg {
   padding: 15/50rem;
   text-align: center;
  }
  .footb {
   display: inline-table;
   width: 100%;
   .borderlf {
    border-right: 1/50rem solid #e4e4e4;
   }
   div {
    display: table-cell;
    box-sizing: border-box;
    text-align: center;
    padding: 10/50rem 0;
   }
  }
 }
}

2.接著你需要一個(gè)js:mackjs.js

import Vue from 'vue';
import confirm from './mack';
let confirmConstructor = Vue.extend(confirm);
let theConfirm = function (text) {
  return new Promise((res, rej) => { //promise封裝,ok執(zhí)行resolve,no執(zhí)行rejectlet
   let confirmDom = new confirmConstructor({  
    el: document.createElement('div')
   })
   document.body.appendChild(confirmDom.$el); //new一個(gè)對(duì)象,然后插入body里面
   confirmDom.text = Object.assing( confirmDom.text,text);  //為了使confirm的擴(kuò)展性更強(qiáng),這個(gè)采用對(duì)象的方式傳入,所有的字段都可以根據(jù)需求自定義
   confirmDom.ok = function () {
    res()
    confirmDom.isShow = false
   }
   confirmDom.close = function () {
    rej()
    confirmDom.isShow = false
   }
  })
 }
 export default theConfirm; 
  //暴露出去,別忘記掛載到vue的原型上 
  //  => 在main.js里面先引入 import theConfirm from './components/confirm/confirm.js'
  //  => 再掛載 Vue.prototype.$confirm = theConfirm;
  //在需要的地方直接用以下方法調(diào)用即可:
  //  this.$confirm({
  //   type:'提示',
  //   msg:'是否刪除這條信息?',
  //   btn:{
  //     ok:'yes',
  //     no:'no'
  //   }
  // }).then(() => {
  //   console.log('ok')
  // })
  // .catch(() => {
  //   console.log('no')
  // })

-3.你接著需要在main.js導(dǎo)入這個(gè)文件

import macksjs from './assets/mackjs'
Vue.prototype.$confirm= macksjs ;

-4.最后在你需要引入的vue文件中直接調(diào)用就好了

我是彈出框
 methods:{
  deleteaas() {
   this.$confirm({
    title: "addd",
    mesg: "您確定不再關(guān)注該客戶嗎?",
    cntMsg: '你好
',     cancelValStyle:{color:'red'},     btn: {      confirmVal: "確a定",      cancelVal: "取a消"     }    })     .then(() => {      console.log("yes");      //點(diǎn)擊確定之后的處理     })     .catch(() => {      console.log("no");     });   }  }

上述就是小編為大家分享的vue中怎么封裝一個(gè)彈出框組件了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


名稱欄目:vue中怎么封裝一個(gè)彈出框組件
分享地址:http://weahome.cn/article/pceeoj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部