vue的全局提示框组件实例代码


Posted in Javascript onFebruary 26, 2018

这篇文章给大家介绍一个vue全局提示框组件,具体代码如下所示:

<template>
   <!-- 全局提示框 -->
   <div v-show="visible" class="dialog-tips dialog-center">
     <div>{{message}}</div>
   </div>
</template>
<script>
export default {
 data() {
  return {
   visible: false,
   message: ""
  };
 }
};
</script>
<style lang="scss">
.dialog-tips{
  position: fixed;
  z-index: 100;
  min-width: 220px;
  padding: 40px 22px;
  white-space: nowrap;
  background-color: #fff;
  box-shadow: 0px 8px 15px 0 rgba(0, 0, 0, 0.1);
  text-align: center;
  .dialog-tips-icon{
    width: 54px;
    height: 54px;
    @extend %bg-contain;
    display: inline-block;
    margin-bottom: 13px;
  }
}
.dialog-center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}
</style>

toast.js

import ToastComponent from './toast.vue'
const Toast = {};
// 注册Toast
Toast.install = function (Vue) {
  // 生成一个Vue的子类
  // 同时这个子类也就是组件
  const ToastConstructor = Vue.extend(ToastComponent)
  // 生成一个该子类的实例
  const instance = new ToastConstructor();
  // 将这个实例挂载在我创建的div上
  // 并将此div加入全局挂载点内部
  instance.$mount(document.createElement('div'))
  document.body.appendChild(instance.$el)
  // 通过Vue的原型注册一个方法
  // 让所有实例共享这个方法 
  Vue.prototype.$toast = (msg, duration = 1500) => {
    instance.message = msg;
    instance.visible = true;
    setTimeout(() => {
      instance.visible = false;
    }, duration);
  }
}
export default Toast

如何使用?

在main.js中

 import Vue from 'vue'
import Toast from './toast' 

Vue.use(Toast);

在component中

this.$toast("XXXXXXXXX");

总结

以上所述是小编给大家介绍的vue的全局提示框组件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Jquery 表格合并的问题分享
Sep 17 Javascript
利用js读取动态网站从服务器端返回的数据
Feb 10 Javascript
JS+CSS实现Li列表隔行换色效果的方法
Feb 16 Javascript
JavaScript使用二分查找算法在数组中查找数据的方法
Apr 07 Javascript
js图片轮播手动切换效果
Nov 10 Javascript
使用Function.apply()的参数数组化来提高 JavaScript程序性能的技巧
Dec 23 Javascript
理解Javascript文件动态加载
Jan 29 Javascript
js removeChild 方法深入理解
Aug 16 Javascript
javascript实现复选框全选或反选
Feb 04 Javascript
JavaScript之map reduce_动力节点Java学院整理
Jun 29 Javascript
微信小程序有旋转动画效果的音乐组件实例代码
Aug 22 Javascript
vue使用vant中的checkbox实现全选功能
Nov 17 Vue.js
Angular4 ElementRef的应用
Feb 26 #Javascript
vue cli构建的项目中请求代理与项目打包问题
Feb 26 #Javascript
vue-cli webpack模板项目搭建及打包时路径问题的解决方法
Feb 26 #Javascript
vue bus全局事件中心简单Demo详解
Feb 26 #Javascript
详解Angular系列之变化检测(Change Detection)
Feb 26 #Javascript
Bootstrap4如何定制自己的颜色和风格
Feb 26 #Javascript
vue-cli下的vuex的简单Demo图解(实现加1减1操作)
Feb 26 #Javascript
You might like
多人战的战术与战略
2020/03/04 星际争霸
php中截取字符串支持utf-8
2007/01/18 PHP
destoon实现调用热门关键字的方法
2014/07/15 PHP
PHP正则替换函数preg_replace和preg_replace_callback使用总结
2014/09/22 PHP
几个实用的PHP内置函数使用指南
2014/11/27 PHP
浅析Laravel5中队列的配置及使用
2016/08/04 PHP
PHP上传图片、删除图片简单实例
2016/11/12 PHP
安装docker和docker-compose实例详解
2019/07/30 PHP
开发跨浏览器javascript常见注意事项
2009/01/01 Javascript
JavaScript中的View-Model使用介绍
2011/08/11 Javascript
点击页面其它地方隐藏该div的两种思路
2013/11/18 Javascript
JavaScript的各种常见函数定义方法
2014/09/16 Javascript
javascript轮播图算法
2016/10/21 Javascript
node文件上传功能简易实现代码
2017/06/16 Javascript
Bootstrap Multiselect 常用组件实现代码
2017/07/09 Javascript
一次Webpack配置文件的分离实战记录
2018/11/30 Javascript
微信小程序实现手指拖动选项排序
2020/04/22 Javascript
解决vue prop传值default属性如何使用,为何不生效的问题
2020/09/21 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
linux 下实现python多版本安装实践
2014/11/18 Python
Python中将字典转换为XML以及相关的命名空间解析
2015/10/15 Python
Python实现简单文本字符串处理的方法
2018/01/22 Python
Django学习笔记之ORM基础教程
2018/03/27 Python
在Pycharm中自动添加时间日期作者等信息的方法
2019/01/16 Python
python实现字符串完美拆分split()的方法
2019/07/16 Python
django实现模板中的字符串文字和自动转义
2020/03/31 Python
python字符串拼接+和join的区别详解
2020/12/03 Python
使用python画出逻辑斯蒂映射(logistic map)中的分叉图案例
2020/12/11 Python
Python中过滤字符串列表的方法
2020/12/22 Python
CSS3实现全景图特效示例代码
2018/03/26 HTML / CSS
CSS3实现文字描边的2种方法(小结)
2020/02/14 HTML / CSS
HTML5 Canvas实现360度全景图的示例代码
2018/01/29 HTML / CSS
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
学生处主任岗位职责
2013/12/01 职场文书
扬州个园导游词
2015/02/06 职场文书
教师专业技术工作总结2015
2015/05/13 职场文书