Vue全局弹窗

今天来搞一个全局弹窗,不用每个文件都引入,只在main.js里作为全局原型引入就好了

先新建弹窗组件

toast.vue

<template></template>

<script>
export default {
toast(text) {
this.text = text;
var dom = document.createElement("toast");//Vue不支持直接使用appendChild方法向dom中添加元素,所以需要用到这个奇怪的方法,来创建一个dom节点
dom.className = "toast"; //给我们创建的dom节点写一个类名
dom.id = "toast" //这是id
dom.innerHTML = text; //这个就是内容了,我们把参数 text 传入到这里
document.getElementById("app").appendChild(dom); //现在我们可以拿着做好的节点 直捣黄龙,插入到我们想要插入的地方了
setTimeout("document.getElementById('toast').remove()", 3000 ) //事情办完之后,就要拔出来,别问我为什么只有三秒
},
data() {
return {
text: "",
};
},
};
</script> <style>
</style>

这样,我们创建好了一个

{{text}}

这样的标签。

这时我们需要把样式写到index.html里,使它全局生效。

index.html

//index.html
.toast {
position: fixed;
font-size: 14px;
color: #888;
top: 20px;
background: #fff;
box-shadow: 0 0 10px #52525278;
height: 20px;
z-index: 99999999;
text-align: center;
border-radius: 10px;
padding: 25px 130px;
animation: toast 3s forwards cubic-bezier(0.57, 0.85, 0.85, 0.57);
}
//因为我们设置3秒后销毁元素,所以动画要控制在3秒以内
//加点小动画
//index.html @keyframes toast {
1% {
opacity: 0;
right: -200px;
}
10%{
opacity: 1;
right: 20px;
}
90%{
opacity: 1;
right: 20px;
}
100% {
opacity: 0;
right: -200px;
display: none;
}
}

好了,万事俱备,只欠东风了,我们在main.js中注册它

main.js

import toast from './toast'
Vue.prototype.$toast = toast
//我们像使用npm下载的插件一样,直接将它注册为全局prototype
//现在我们就可以在Vue项目中的任何一个地方唤醒它了
//小家伙总是出现在右上角!
this.$toast.toast("ok");
//在引号中传入你想展示的文字吧

它出现了

Vue全局弹窗:一次注册,全局可弹的更多相关文章

  1. Vue自动化注册全局组件脚本

    今天有一个idea,vue一些组件,可能会全局都用到,我觉得在main.js写 Vue.component(name, instance) 然后很命令式,写着也不好看,想着能够有一个函数可以指定加载比 ...

  2. vue 自动注册全局组件

    vue 自动注册全局组件 vue 注册全局组件的方式 const plugins = { install(Vue) { const requireComponent = require.context ...

  3. vue 注册全局组件

    注册全局组件有啥好处呢? 提高代码的复用性:哪里需要写哪里,贼方便,就写一个标签:减少代码量:可以再配合slot一起使用,咦~~,舒服 为了让整个项目的可读性,我创建一个文件统一存放全局组件 1.创建 ...

  4. vue 中注册全局组件

    1  全局注册组件 建一个 js 文件, 注册全局组件, 并且暴露出去 然后再在 main.js  中引入       在页面就可以直接使用了    2 全局注册过滤器 建立文件, 包含所有过滤器方法 ...

  5. 在vue项目中 如何定义全局变量 全局函数

    如题,在项目中,经常有些函数和变量是需要复用,比如说网站服务器地址,从后台拿到的:用户的登录token,用户的地址信息等,这时候就需要设置一波全局变量和全局函数 定义全局变量 原理: 设置一个专用的的 ...

  6. 前端(二十二)—— vue组件:局部组件、全局组件、父组件数据传到子组件、子组件数据传到父组件、父子组件实现todoList

    Vue组件 一.组件介绍 每一个组件都是一个vue实例 每个组件均具有自身的模板template,根组件的模板就是挂载点,根组件也可以显式书写模板,会替换掉挂载点 每个组件模板只能拥有一个根标签 子组 ...

  7. vue API 知识点(1)---全局 API 总结

    1.Vue.extend(options) 构造器,创建一个 子类 .参数是一个包含组件选项的对象 data 选项是特例,需要注意 在 Vue.extend() 中它必须是一个函数, <div ...

  8. vue中利用.env文件存储全局环境变量,以及配置vue启动和打包命令

    目录 1,前言 2,.env文件的作用 3,配置.env文件 4,配置启动命令 5,获取.env中的全局变量 5,实际用处 1,前言 分享一下vue项目中利用.env文件存储全局环境变量,以及利于项目 ...

  9. vue项目使用.env文件配置全局环境变量

    一.env文件的认识: (1).env 文件主要的作用是存储环境变量,也就是会随着环境变化的东西,比如数据库的用户名.密码.缓存驱动.时区,还有静态文件的存储路径之类的.因为这些信息应该是和环境绑定的 ...

随机推荐

  1. mysql 多字段联合唯一索引

    6个字段组成联合唯一索引 索引名称code_level_metric_type_week_year sql语句联合索引 CREATE UNIQUE INDEX code_level_metric_ty ...

  2. NVIDIA深度学习Tensor Core性能解析(上)

    NVIDIA深度学习Tensor Core性能解析(上) 本篇将通过多项测试来考验Volta架构,利用各种深度学习框架来了解Tensor Core的性能. 很多时候,深度学习这样的新领域会让人难以理解 ...

  3. A100计算能力

    A100计算能力 A100 GPU支持新的计算功能8.0.表1比较了NVIDIA GPU架构的不同计算功能的参数. 表1.计算能力:GP100 vs. GV100 vs. GA100. MIG架构 尽 ...

  4. GStreamer跨平台多媒体框架

    GStreamer跨平台多媒体框架 Gstreamer基本概念 GStreamer是用于构造媒体处理组件图的库.它支持的应用程序范围从简单的Ogg / Vorbis回放,音频/视频流到复杂的音频(混合 ...

  5. Kettle通过Http post请求webservice接口以及结果解析处理

    kettle中有两种方式请求webservice服务,一个是Web服务查询,但是这个有缺陷,无法处理复杂的需求,遇到这种情况就需要用Http post来处理了. 网上也有很多关于Http post请求 ...

  6. 把HttpClient换成IHttpClientFactory之后,放心多了

    前言 关于HttpClient的使用,个人在很多场景都派上用场了,比如在Winform或后台服务中用其调用接口获取和上传数据.微服务中用其进行各服务之间的数据共享等,到目前来看,似乎还没有出现过什么问 ...

  7. 【转】【NX二次开发】UFUN进度中断,单击停止可中断此操作

    队长的博客: https://www.cnblogs.com/nxopen2018/p/13174207.html 显示此对话框,点击可中断操作: 用到的ufun函数: UF_ABORT_ask_fl ...

  8. UF_CLONE 克隆操作

    Open C UF_CLONE_add_assembly  添加装配到克隆操作UF_CLONE_add_part           添加部件到克隆操作UF_CLONE_apply_defaultsU ...

  9. 图文并茂教你学会使用 IntelliJ IDEA 进行远程调试

    1. 前言 今天线上出现了个 Bug ,而且比较坑的是涉及到微信相关的东西不能线下调试.传统方式是在代码中各种的日志 log 埋点然后重新部署进行调试,再根据 log 中的信息进行分析.如果你的 lo ...

  10. 【题解】Luogu P2889 [USACO07NOV]挤奶的时间Milking Time

    Luogu P2889 [USACO07NOV]挤奶的时间Milking Time 题目描述 传送门Bessie is such a hard-working cow. In fact, she is ...