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 相关文章推荐
IE中createElement需要注意的一个问题
Jul 13 Javascript
单元选择合并变色示例代码
May 26 Javascript
js中匿名函数的创建与调用方法分析
Dec 19 Javascript
JS定时检测任务任务完成后执行下一步的解决办法
Dec 22 Javascript
详解Node项目部署到云服务器上
Jul 12 Javascript
node.js基于express使用websocket的方法
Nov 09 Javascript
Vue按需加载的具体实现
Dec 02 Javascript
详解vue路由篇(动态路由、路由嵌套)
Jan 27 Javascript
VUE实现移动端列表筛选功能
Aug 23 Javascript
解决layUI的页面显示不全的问题
Sep 20 Javascript
Vue中添加滚动事件设置的方法详解
Sep 14 Javascript
JavaScript ES 模块的使用
Nov 12 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脚本的10个技巧(3)
2006/10/09 PHP
PHP 类型转换函数intval
2009/06/20 PHP
php语言流程控制中的主动与被动
2012/11/05 PHP
30个php操作redis常用方法代码例子
2014/07/05 PHP
某页码显示的helper 少量调整,另附js版
2010/09/12 Javascript
Javascript中匿名函数的多种调用方式总结
2013/12/06 Javascript
ajax提交表单实现网页无刷新注册示例
2014/05/08 Javascript
jquery 根据name名获取元素的value值
2015/02/27 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
jQuery Mobile动态刷新页面样式的实现方法
2016/05/28 Javascript
JavaScript手机振动API
2016/06/11 Javascript
AngularJS入门教程之静态模板详解
2016/08/18 Javascript
自己封装的一个原生JS拖动方法(推荐)
2016/11/22 Javascript
js+SVG实现动态时钟效果
2018/07/14 Javascript
微信小程序倒计时功能实例代码
2018/07/17 Javascript
Angular请求防抖处理第一次请求失效问题
2019/05/17 Javascript
如何阻止小程序遮罩层下方图层滚动
2019/09/05 Javascript
[01:18]DOTA2超级联赛专访hanci ForLove淘汰感言曝光
2013/06/04 DOTA
[58:09]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第三场 6.2
2018/06/03 DOTA
Python实现微信公众平台自定义菜单实例
2015/03/20 Python
python在linux系统下获取系统内存使用情况的方法
2015/05/11 Python
Python中的条件判断语句与循环语句用法小结
2016/03/21 Python
Python 读取串口数据,动态绘图的示例
2019/07/02 Python
33个Python爬虫项目实战(推荐)
2019/07/08 Python
python 使用opencv 把视频分割成图片示例
2019/12/12 Python
浅析Python迭代器的高级用法
2020/07/16 Python
Python设计密码强度校验程序
2020/07/30 Python
CSS3制作苹果风格键盘特效
2015/02/26 HTML / CSS
HTML5新特性之语义化标签
2017/10/31 HTML / CSS
Kathmandu美国网站:新西兰户外运动品牌
2019/03/23 全球购物
物理教师自荐信范文
2013/12/28 职场文书
社区学雷锋活动策划方案
2014/01/30 职场文书
党的群众路线教育实践活动领导班子整改措施
2014/10/28 职场文书
Mysql Show Profile
2021/04/05 MySQL
CSS3 天气图标动画效果
2021/04/06 HTML / CSS
Python - 10行代码集2000张美女图
2021/05/23 Python