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 剧场版 你必须知道的javascript
May 27 Javascript
javascript 获取select下拉列表值的代码
Sep 07 Javascript
让IE6支持min-width和max-width的方法
Jun 25 Javascript
使用typeof方法判断undefined类型
Sep 09 Javascript
node.js中的path.basename方法使用说明
Dec 09 Javascript
初步认识JavaScript函数库jQuery
Jun 18 Javascript
JavaScript实现点击按钮直接打印
Jan 06 Javascript
jQuery解析json格式数据简单实例
Jan 22 Javascript
JavaScript基础重点(必看)
Jul 09 Javascript
echarts3 使用总结(绘制各种图表,地图)
Jan 05 Javascript
vue弹窗组件使用方法
Apr 28 Javascript
javascript设计模式 ? 命令模式原理与用法实例分析
Apr 20 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作的文本留言本的例子(六)
2006/10/09 PHP
关于PHP的curl开启问题探讨
2014/04/08 PHP
SyntaxHighlighter代码加色使用方法
2008/09/07 Javascript
关于html+ashx开发中几个问题的解决方法
2011/07/18 Javascript
jquery 实现密码框的显示与隐藏示例代码
2013/09/18 Javascript
jquery $(this).attr $(this).val方法使用介绍
2013/10/08 Javascript
浅谈javascript的调试
2015/01/28 Javascript
JavaScript实战(原生range和自定义特效)简单实例
2016/08/21 Javascript
bootstrap的3级菜单样式,支持母版页保留打开状态实现方法
2016/11/10 Javascript
Bootstrap基本组件学习笔记之分页(12)
2016/12/08 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
2017/10/20 Javascript
vue 优化CDN加速的方法示例
2018/09/19 Javascript
[44:09]DOTA2上海特级锦标赛A组小组赛#1 EHOME VS MVP.Phx第二局
2016/02/25 DOTA
Python logging模块学习笔记
2014/05/24 Python
Python实现的数据结构与算法之队列详解
2015/04/22 Python
Tensorflow 查看变量的值方法
2018/06/14 Python
详解python分布式进程
2018/10/08 Python
pycharm内无法import已安装的模块问题解决
2020/02/12 Python
Python第三方库的几种安装方式(小结)
2020/04/03 Python
python打开文件的方式有哪些
2020/06/29 Python
如何使用Cython对python代码进行加密
2020/07/08 Python
通过实例了解python__slots__使用方法
2020/09/14 Python
用python批量移动文件
2021/01/14 Python
html5的新玩法——语音搜索
2013/01/03 HTML / CSS
HTML5给汉字加拼音收起展开组件的实现代码
2020/04/08 HTML / CSS
在加拿大在线租赁和购买电子游戏:Game Access
2019/09/02 全球购物
银行自荐信范文
2013/10/07 职场文书
建筑专业自荐信
2013/10/18 职场文书
上班上网检讨书
2014/01/29 职场文书
人力资源部经理的岗位职责
2014/03/04 职场文书
初二学习计划书范文
2014/04/27 职场文书
学生保证书范文
2014/04/28 职场文书
2014年实习班主任工作总结
2014/11/08 职场文书
大学生读书笔记大全
2015/07/01 职场文书
2015年民兵整组工作总结
2015/07/24 职场文书
Spring中的使用@Async异步调用方法
2021/11/01 Java/Android