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 相关控件的事件操作分解
Aug 03 Javascript
Javascript中的window.event.keyCode使用介绍
Apr 26 Javascript
人人网javascript面试题 可以提前实现下
Jan 05 Javascript
jquery控制左右箭头滚动图片列表的实例
May 20 Javascript
jquery高级编程的最佳实践详解
Mar 23 Javascript
Document.body.scrollTop的值总为零的快速解决办法
Jun 09 Javascript
JavaScript、C# URL编码、解码总结
Jan 21 Javascript
vuejs2.0实现一个简单的分页示例
Feb 22 Javascript
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
Aug 16 Javascript
jQuery 实现鼠标画框并对框内数据选中的实例代码
Aug 29 jQuery
Vue 理解之白话 getter/setter详解
Apr 16 Javascript
解决vue打包 npm run build-test突然不动了的问题
Nov 13 Javascript
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
浅析关于PHP位运算的简单权限设计
2013/06/30 PHP
php延迟静态绑定实例分析
2015/02/08 PHP
PHP简单获取视频预览图的方法
2015/03/12 PHP
JavaScript 常用函数
2009/12/30 Javascript
JavaScript类继承及实例化的方法
2015/07/25 Javascript
AngularJS转换响应内容
2016/01/27 Javascript
js仿iphone秒表功能 计算平均数
2017/01/11 Javascript
JavaScript函数柯里化原理与用法分析
2017/03/31 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
自适应布局meta标签中viewport、content、width、initial-scale、minimum-scale、maximum-scale总结
2017/08/18 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
详解使用vue-admin-template的优化历程
2018/05/20 Javascript
bootstrap 弹出框modal添加垂直方向滚轴效果
2018/07/09 Javascript
JavaScript中.min.js和.js文件的区别讲解
2019/02/13 Javascript
jQuery实现判断滚动条滚动到document底部的方法分析
2019/08/27 jQuery
通过GASP让vue实现动态效果实例代码详解
2019/11/24 Javascript
JS实现横向轮播图(中级版)
2020/01/18 Javascript
JavaScript实现点击出现子菜单效果
2021/02/08 Javascript
[01:55]TI9显影之尘系列 - Evil Geniuses
2019/08/22 DOTA
python字符串,数值计算
2016/10/05 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
python实现windows下文件备份脚本
2018/05/27 Python
python实现泊松图像融合
2018/07/26 Python
python获取时间及时间格式转换问题实例代码详解
2018/12/06 Python
快速解决jupyter notebook启动需要密码的问题
2020/04/21 Python
利用Python中的Xpath实现一个在线汇率转换器
2020/09/09 Python
SteelSeries赛睿官网:游戏外设和配件的领先制造商(耳机、键盘、鼠标和鼠标垫)
2018/06/17 全球购物
英国蜡烛、蜡烛配件和家居香氛购买网站:Yankee Candle
2018/12/12 全球购物
哈曼俄罗斯官方网上商店:Harman.club
2020/07/24 全球购物
一套带答案的C++笔试题
2014/01/10 面试题
大专应届生个人简历的自我评价
2013/10/15 职场文书
入党积极分子思想汇报范文
2014/01/05 职场文书
优秀工会工作者事迹材料
2014/06/02 职场文书
2014年祖国生日寄语
2014/09/19 职场文书
12.4全国法制宣传日活动总结
2014/11/01 职场文书
2014年质检工作总结
2014/11/26 职场文书