vue实现Toast组件轻提示


Posted in Vue.js onApril 10, 2022

vue实现Toast轻提示

首先创建一个toast组件

<template>
  <div class="context" v-show="isshow">
    <span class="tip">{{ text }}</span>
  </div>
</template>
<script>
export default {
  name: "Toast",
  props: {
    isshow: {
      type: Boolean,
    },
    text: {
      type: String,
    },
  },
  watch: {
    isshow(val) {
      if (val === true) {
        setTimeout(() => {
          this.isshow = false;
        }, 3000);
      }
    },
  },
};
</script>
<style lang="less" scoped>
.context {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: flex;
  justify-content: center;
  align-items: center;
  .tip {
    background-color: rgba(40, 40, 40, 0.8);
    color: aliceblue;
    font-size: 0.6rem;
    padding: 0.2rem;
    border-radius: 0.1rem;
  }
}
</style>

在js文件中引入组件

import Toast from "./Toast.vue";
let NewToast = {
  install: function (Vue) {
    //创建vue插件,官方地址https://cn.vuejs.org/v2/guide/plugins.html
    let newToast = Vue.extend(Toast); //创建vue构造器,官方地址https://cn.vuejs.org/v2/api/#Vue-extend
    let toast = new newToast(); //创建实例
    document.body.appendChild(toast.$mount().$el); //挂载
    Vue.prototype.$Toast = function (text) {
      toast.isshow = true; // 传入props
      toast.text = text; // 传入props
    };
  },
};
export { NewToast };

在入口文件中引入上面这个js文件

import { NewToast } from "@/components/index.js";
Vue.use(NewToast);

下面就可以在view里全局使用了

but() {
    this.$Toast("Are you ok ?");
},

效果图

vue实现Toast组件轻提示

这样一个简单的轻提示就好了,觉得样式丑的话,可以自己调一下。

使用vant的Toast轻提示报错

记录一下今天使用vant中的Toast 轻提示,按照官方文档中的方法去使用发现报错使用不了。

文档中是这样写的

Toast.success('成功文案');
Toast.fail('失败文案');

main.js中引用vant后直接调用Toast报错。

实际使用是这样写

this.$toast.success("成功文案");
this.$toast.fail("失败文案");

和调用路由一样需要this点出来。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。 

Vue.js 相关文章推荐
在Vue中使用Echarts可视化库的完整步骤记录
Nov 18 Vue.js
vue中如何自定义右键菜单详解
Dec 08 Vue.js
vue实现两个区域滚动条同步滚动
Dec 13 Vue.js
vue 数据操作相关总结
Dec 17 Vue.js
Vue中ref和$refs的介绍以及使用方法示例
Jan 11 Vue.js
基于VUE实现简单的学生信息管理系统
Jan 13 Vue.js
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
Mar 01 Vue.js
使用vue-element-admin框架从后端动态获取菜单功能的实现
Apr 29 Vue.js
Vue3.0中Ref与Reactive的区别示例详析
Jul 07 Vue.js
Vue Mint UI mt-swipe的使用方式
Jun 05 Vue.js
Vue3实现简易音乐播放器组件
Aug 14 Vue.js
Vue Element plus使用方法梳理
Dec 24 Vue.js
vue自定义右键菜单之全局实现
Apr 09 #Vue.js
vue判断按钮是否可以点击
Apr 09 #Vue.js
VUE之图片Base64编码使用ElementUI组件上传
Apr 09 #Vue.js
vue如何实现关闭对话框后刷新列表
Apr 08 #Vue.js
vue实现列表垂直无缝滚动
Apr 08 #Vue.js
vue3引入highlight.js进行代码高亮的方法实例
vue中的可拖拽宽度div的实现示例
You might like
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
2014/05/04 PHP
thinkphp学习笔记之多表查询
2014/07/28 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
jQuery Flash/MP3/Video多媒体插件
2010/01/18 Javascript
jQuery Select(单选) 模拟插件 V1.3.62 改进版
2010/07/17 Javascript
关于hashchangebroker和statehashable的补充文档
2011/08/08 Javascript
仿jQuery的siblings效果的js代码
2011/08/09 Javascript
javascript 兼容所有浏览器的DOM扩展功能
2012/08/01 Javascript
jQuery中removeData()方法用法实例
2014/12/27 Javascript
javascript实现点击提交按钮后显示loading的方法
2015/07/03 Javascript
jQuery+HTML5美女瀑布流布局实现方法
2015/09/21 Javascript
jQuery mobile转换url地址及获取url中目录部分的方法
2015/12/04 Javascript
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
2017/12/09 Javascript
移动端图片上传旋转、压缩问题的方法
2018/10/16 Javascript
深入了解js原型模式
2019/05/30 Javascript
vue scroll滚动判断的实现(是否滚动到底部、滚动方向、滚动节流、获取滚动区域dom元素)
2020/06/11 Javascript
使用vue引入maptalks地图及聚合效果的实现
2020/08/10 Javascript
nuxt 自定义 auth 中间件实现令牌的持久化操作
2020/11/05 Javascript
[01:04:01]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第一场
2014/05/24 DOTA
[53:13]DOTA2-DPC中国联赛 正赛 DLG vs PHOENIX BO3 第三场 1月18日
2021/03/11 DOTA
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
Python中常见的数据类型小结
2015/08/29 Python
Python做简单的字符串匹配详解
2017/03/21 Python
解决Pandas to_json()中文乱码,转化为json数组的问题
2018/05/10 Python
基于Python实现定时自动给微信好友发送天气预报
2018/10/25 Python
使用python的pandas为你的股票绘制趋势图
2019/06/26 Python
Golang GBK转UTF-8的例子
2019/08/26 Python
Python实现线性判别分析(LDA)的MATLAB方式
2019/12/09 Python
使用Keras实现简单线性回归模型操作
2020/06/12 Python
英国奢华护肤、美容和Spa品牌:Temple Spa
2019/11/02 全球购物
中专生职业生涯规划书范文
2013/12/29 职场文书
建筑公司员工自我鉴定
2014/04/08 职场文书
乡镇爱国卫生月活动总结
2014/06/25 职场文书
咖啡店创业计划书
2014/08/15 职场文书
推广普通话共筑中国梦演讲稿
2014/09/21 职场文书
社区青年志愿者活动总结
2015/05/06 职场文书