vue.extend实现alert模态框弹窗组件


Posted in Javascript onApril 28, 2018

本文通过Vue.extend创建组件构造器的方法写弹窗组件,供大家参考,具体内容如下

alert.js文件代码

import Vue from 'vue'
// 创建组件构造器
const alertHonor = Vue.extend(require('./alert.vue'));

var currentMsg = {callback:function(){
}}

export default function(options){

  var alertComponent = new alertHonor({el: document.createElement('div')});
  alertComponent.title = options.title;
  alertComponent.ranking = options.ranking;
  // 把alertHonor.vue加入body中
  alertComponent.$appendTo(document.body);

  // 回调函数
  alertComponent.callback = function(action) {
    if (action == 'share') {
      options.share();
    }
  };

}

alert.vue代码

<template>
  <div class="alertHonor" v-if="showAlertHonor">
    <div class="alertHonorBox" @click="alertHonorClick"></div>
    <div class="honorWindow">
      <div class="honorClose" @click="honorClose"></div>
      <div class="honorBg">
        <div class="honorShare">
          <div class="honorBgLeft">升级通知</div>
          <div class="honorBgRight" @click='handleActions("share")'>分享</div>
        </div>
        <div class="honorText">{{title}}</div>
      </div>
      <div class="honorRanking">
        {{ranking}}
      </div>
    </div>
  </div>
</template>
<script>
  export default{
    props:{
      img:{type:String},  //图片
      title:{type:String},  //达人昵称
      ranking:{type:String},   //排名
      share:{type:Function}, //分享
    },
    data(){
      return{
        showAlertHonor:true
      }
    },
    methods:{
      alertHonorClick(){ //点击其他区域
        this.showAlertHonor = false; //关闭整个窗口
      },
      honorClose(){ //点击关闭图标
        this.showAlertHonor = false;
      },

      handleActions(action){
        this.callback(action);
      }
    }
  }
</script>

 引用页面代码

<script>
  import AlertHonor from '../alert.js'
  export default{
    data(){
      return{
        title:'我的荣誉'
      }
    },
    ready(){
    },
    methods:{
      back(){
        alert(1)
      },
      submit(){
        var vm = this;
        AlertHonor({
          
          title:'拜访达人',
          ranking:'您在全国排名第99',
          share: function(){
            vm.share();
          }
        });
      },
      share(){ //点击分享
        alert('分享');
      },
    }
  }
</script>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一个可以兼容IE FF的加为首页与加入收藏实现代码
Nov 02 Javascript
javascript 面向对象继承
Nov 26 Javascript
浅析JavaScript中的同名标识符优先级
Dec 06 Javascript
JS实现HTML表格排序功能
Aug 05 Javascript
js关于getImageData跨域问题的解决方法
Oct 14 Javascript
如何给ss bash 写一个 WEB 端查看流量的页面
Mar 23 Javascript
angular4模块中给标签添加背景图的实现方法
Sep 15 Javascript
浅谈Node异步编程的机制
Oct 18 Javascript
vue 过滤器filter实例详解
Mar 14 Javascript
JS中的算法与数据结构之字典(Dictionary)实例详解
Aug 20 Javascript
React Hooks 实现和由来以及解决的问题详解
Jan 17 Javascript
jQuery实现图片切换效果
Oct 19 jQuery
总结JavaScript在IE9之前版本中内存泄露问题
Apr 28 #Javascript
vue-baidu-map 进入页面自动定位的解决方案(推荐)
Apr 28 #Javascript
Vue2.0实现调用摄像头进行拍照功能 exif.js实现图片上传功能
Apr 28 #Javascript
React native ListView 增加顶部下拉刷新和底下点击刷新示例
Apr 27 #Javascript
React Native日期时间选择组件的示例代码
Apr 27 #Javascript
vue实现点击展开点击收起效果
Apr 27 #Javascript
vue中post请求以a=a&amp;b=b 的格式写遇到的问题
Apr 27 #Javascript
You might like
一个查看session内容的函数
2006/10/09 PHP
php 函数使用方法与函数定义方法
2010/05/09 PHP
PHP人民币金额转大写实例代码
2015/10/02 PHP
在 PHP 和 Laravel 中使用 Traits的方法
2019/11/13 PHP
用ASP将SQL搜索出来的内容导出为TXT的代码
2007/07/27 Javascript
基于Jquery实现的一个图片滚动切换
2012/06/21 Javascript
js类型转换与引用类型详解(Boolean_Number_String)
2014/03/07 Javascript
EasyUI实现第二层弹出框的方法
2015/03/01 Javascript
jQuery实现的Tab滑动选项卡及图片切换(多种效果)小结
2015/09/14 Javascript
js中不同的height, top的区别对比
2015/09/24 Javascript
针对后台列表table拖拽比较实用的jquery拖动排序
2016/10/10 Javascript
微信小程序 定位到当前城市实现实例代码
2017/02/23 Javascript
angularjs实现猜大小功能
2017/10/23 Javascript
jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
2018/07/31 jQuery
微信小程序使用template标签实现五星评分功能
2018/11/03 Javascript
[00:43]FTP典藏礼包 DOTA2三大英雄霸气新套装
2014/03/21 DOTA
[01:30]2016国际邀请赛中国区预选赛神秘商店火爆开启
2016/06/26 DOTA
Linux 发邮件磁盘空间监控(python)
2016/04/23 Python
python基础教程之Filter使用方法
2017/01/17 Python
Python实现的破解字符串找茬游戏算法示例
2017/09/25 Python
Python第三方库face_recognition在windows上的安装过程
2019/05/03 Python
python3使用腾讯企业邮箱发送邮件的实例
2019/06/28 Python
在django中图片上传的格式校验及大小方法
2019/07/28 Python
Django之form组件自动校验数据实现
2020/01/14 Python
自学python用什么系统好
2020/06/23 Python
5个你不知道的HTML5的接口介绍
2013/08/07 HTML / CSS
安全检查与奖惩制度
2014/01/23 职场文书
教学个人的自我评价分享
2014/02/16 职场文书
超市理货员岗位职责
2014/07/04 职场文书
2014党员学习习主席讲话思想汇报
2014/09/15 职场文书
房屋租赁协议书(标准版)
2014/10/02 职场文书
法院干警四风问题个人对照检查材料思想汇报
2014/10/07 职场文书
辞职信模板(中英文版)
2015/02/27 职场文书
离婚起诉状范本
2015/05/19 职场文书
Python 数据结构之十大经典排序算法一文通关
2021/10/16 Python
Mysql InnoDB 的内存逻辑架构
2022/05/06 MySQL