最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue插件--仿微信小程序showModel實(shí)現(xiàn)模態(tài)提示窗功能

 更新時(shí)間:2020年08月19日 14:29:52   作者:專業(yè)前端小白  
這篇文章主要介紹了vue插件--仿微信小程序showModel實(shí)現(xiàn)模態(tài)提示窗,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

效果圖:

下面是源碼:

index.js

import Vue from 'vue';
import model from './model.vue';
 
 
export default {
 install(Vue) {
 
 const defaults = {
  show: false,
  mask: true,
  title: '提示',
  content: '這是正文',
  confirmButton: true,
  cancelButton: true,
  confirmText: '確認(rèn)',
  cancelText: '取消',
  cancelCallBack: () => {},
  confirmCallBack: () => {}
 };
 
 const modelVueConstructor = Vue.extend(model);
 
 Vue.prototype.$model = (options = {}) => {
  if (Vue.prototype.$isServer) return;
  options = Object.assign({}, defaults, options);
  let parent = document.body ;
  let instance = new modelVueConstructor({
  el: document.createElement('div'),
  data: options
  });
  parent.appendChild(instance.$el);
 
  return instance;
 };
 
 },
};

model.vue

<template>
 <div v-if="show" class="model-container">
 <div class="model-main">
  <div class="model-title">{{title}}</div>
  <div class="model-content" v-html="content"></div>
  <div class="model-buttons">
  <button v-if="cancelButton" @click="cancelClick" class="button">{{cancelText}}</button>
  <button v-if="confirmButton" @click="confirmClick" class="button confirm">{{confirmText}}</button>
  </div>
 </div>
 <div v-show="mask" class="model-mask"></div>
 </div>
 
</template>
 
<script type="text/babel">
 export default {
 data() {
 return {
 show: false,
 mask: true,
 title: '提示',
 content: '這是正文',
 confirmButton: true,
 cancelButton: true,
 confirmText: '確認(rèn)',
 cancelText: '取消',
 cancelCallBack: () => {},
 confirmCallBack: () => {}
 };
 },
 methods: {
 cancelClick(){
  this.show = false;
  this.cancelCallBack();
 },
 confirmClick(){
  this.show = false;
  this.confirmCallBack();
 }
 }
 };
</script>
<style lang="less" scoped>
 .model-container{
 width: 100%;
 height: 100vh;
 position: fixed;
 top: 0;
 left: 0;
 z-index: var(--model-index);
 display: flex;
 justify-content: center;
 align-items: center;
 .model-main{
  position: relative;
  z-index: 9;
  width: 80%;
  background-color: #ffffff;
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
  .model-title{
  font-size: 18px;
  color: #333;
  width: 100%;
  padding: 18px;
  font-weight: bold;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  }
  .model-content{
  font-size: 16px;
  color: #666;
  padding: 10px;
  padding-top: 0px;
  padding-bottom: 20px;
  }
  .model-buttons{
  width: 100%;
  display: flex;
  align-items: center;
  .button{
   flex: 1;
   padding: 18px 10px;
   overflow: hidden;
   white-space: nowrap;
   text-overflow: ellipsis;
   font-size: 16px;
   outline: none;
   background-color: #ffffff;
   border-top: 1px solid #f2f2f2;
   border-right: 1px solid #f2f2f2;
   &.confirm{
   color: var(--theme);
   font-weight: bold;
   }
   &:last-child{
   border-right: 0;
   }
   &:active{
   background-color: #f2f2f2;
   }
  }
  }
 }
 .model-mask{
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  background-color: rgba(0,0,0,0.45);
 }
 }
</style>

通過添加實(shí)例方法,把插件添加到vue.prototype上來實(shí)現(xiàn)。

在使用之前需要將插件掛載到Vue全局實(shí)例上:

main.js

import VueModel from './components/model/index.js';
Vue.use(VueModel);

完成上述條件后,就可以在你的vue項(xiàng)目中使用啦:

this.$model({
 show: true,
 title: "提示",
 content: "提示內(nèi)容",
 cancelButton: true,
 confirmCallBack: () => {
 console.log("確認(rèn)");
 },
 cancelCallBack: () => {
 console.log("取消");
 }
});

總結(jié)

到此這篇關(guān)于vue插件--仿微信小程序showModel實(shí)現(xiàn)模態(tài)提示窗的文章就介紹到這了,更多相關(guān)微信小程序showModel實(shí)現(xiàn)模態(tài)提示窗內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue.js列表渲染綁定jQuery插件的正確姿勢

    Vue.js列表渲染綁定jQuery插件的正確姿勢

    這篇文章主要為大家詳細(xì)介紹了Vue.js列表渲染綁定jQuery插件的正確姿勢,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 在Vue中實(shí)現(xiàn)Excel導(dǎo)出功能(數(shù)據(jù)導(dǎo)出)

    在Vue中實(shí)現(xiàn)Excel導(dǎo)出功能(數(shù)據(jù)導(dǎo)出)

    本文分享了如何在前端導(dǎo)出Excel文件,強(qiáng)調(diào)了前端導(dǎo)出的即時(shí)性、便捷性、靈活性和定制化優(yōu)勢,以及減輕后端服務(wù)器負(fù)擔(dān)的特點(diǎn),詳細(xì)介紹了ExcelJS和FileSaver.js兩個(gè)工具庫的使用方法和主要功能,最后通過Vue實(shí)現(xiàn)了Excel的導(dǎo)出功能
    2024-10-10
  • Vue3中頁面跳轉(zhuǎn)方式總結(jié)

    Vue3中頁面跳轉(zhuǎn)方式總結(jié)

    Vue.js?是一個(gè)用于構(gòu)建用戶界面的漸進(jìn)式?JavaScript?框架,它提供了多種方法來實(shí)現(xiàn)頁面之間的導(dǎo)航,本文將詳細(xì)介紹?Vue?3?中的各種頁面跳轉(zhuǎn)方式,有需要的小伙伴可以參考一下
    2024-12-12
  • Vue實(shí)現(xiàn)導(dǎo)航欄的顯示開關(guān)控制

    Vue實(shí)現(xiàn)導(dǎo)航欄的顯示開關(guān)控制

    今天小編就為大家分享一篇Vue實(shí)現(xiàn)導(dǎo)航欄的顯示開關(guān)控制,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Vue結(jié)合路由配置遞歸實(shí)現(xiàn)菜單欄功能

    Vue結(jié)合路由配置遞歸實(shí)現(xiàn)菜單欄功能

    這篇文章主要介紹了Vue結(jié)合路由配置遞歸實(shí)現(xiàn)菜單欄,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)火鍋工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • vue項(xiàng)目中使用qrcodesjs2生成二維碼簡單示例

    vue項(xiàng)目中使用qrcodesjs2生成二維碼簡單示例

    最近項(xiàng)目中需生成二維碼,發(fā)現(xiàn)了很好用的插件qrcodesjs2,所以下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目中使用qrcodesjs2生成二維碼的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • vue使用neovis操作neo4j圖形數(shù)據(jù)庫及優(yōu)缺點(diǎn)

    vue使用neovis操作neo4j圖形數(shù)據(jù)庫及優(yōu)缺點(diǎn)

    這篇文章主要介紹了vue使用neovis操作neo4j圖形數(shù)據(jù)庫,本文給大家介紹了與常規(guī)做法的優(yōu)缺點(diǎn)對比及使用技巧,對vue?neo4j圖形數(shù)據(jù)庫相關(guān)知識感興趣的朋友一起看看吧
    2022-02-02
  • vue3 銷毀組件方法及問題解決方案

    vue3 銷毀組件方法及問題解決方案

    這篇文章主要介紹了vue3 銷毀組件方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • 淺談vue在html中出現(xiàn){{}}的原因及解決方式

    淺談vue在html中出現(xiàn){{}}的原因及解決方式

    這篇文章主要介紹了淺談vue在html中出現(xiàn){{}}的原因及解決方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 4種方案帶你探索Vue代碼復(fù)用的前世今生

    4種方案帶你探索Vue代碼復(fù)用的前世今生

    我們所熟知的Vue.js也在如何提取公共代碼復(fù)用方面也一直在探索優(yōu)化,本文小編就來和各位聊聊Vue.js代碼復(fù)用的前世今生,希望對大家學(xué)習(xí)Vue有一定的幫助
    2023-05-05

最新評論

封丘县| 全南县| 长葛市| 弥渡县| 新平| 余庆县| 永修县| 印江| 天长市| 毕节市| 大港区| 金坛市| 临武县| 彰化县| 房产| 房产| 鹿泉市| 宝坻区| 绥江县| 全椒县| 辽阳县| 通化县| 元江| 崇文区| 禹城市| 阿拉善右旗| 旬邑县| 阿勒泰市| 伊春市| 河曲县| 昂仁县| 余江县| 河东区| 绵阳市| 利津县| 德昌县| 集安市| 灵宝市| 保亭| 平定县| 大田县|