vue弹窗组件封装_vue弹出框组件

vue弹窗组件封装_vue弹出框组件VUE全局,需要安装vant

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

创建一个toast.js文件,(图片随便找的,改一下即可)

import { Toast } from 'vant';
Vue.use(Toast);
Toast.setDefaultOptions({ duration: 2000 });   //所有toast设置为2秒

// 封装
const mytoast = (msg,type=1)=>{       //type1,2,3分别是成功,警告,失败的图标, 默认不传则为成功图标
    let imgUrl = null
    if(type == 1){
        imgUrl = 'http://onetribe.top/qt/picture/success.png'
    }
    if(type == 2){
        imgUrl = 'http://onetribe.top/qt/picture/warning.png'
    }
    if(type == 3){
        imgUrl = 'http://onetribe.top/qt/picture/error.png'
    }
    Toast({
        message: msg,
        icon: imgUrl,
        className: 'myshowToast'
    });
}

// 挂载
import Vue from 'vue';
Vue.prototype.$mytoast = new Vue()
Vue.prototype.$mytoast = mytoast

export default mytoast

弹窗样式,放到全局的样式配置内

/* 提示框样式 */
.myshowToast{
  display: block;
  width: 120px;
  height: 120px;
  position: fixed;
  top: calc(50% - 60px);
  left: calc(50% - 60px);
  text-align: center;
  background-color: #f6f9fe;
  border-radius: 20px;
}

.myshowToast img{
  width: 80px;
  height: 80px;
}

在行内调用

    <button @click="()=>{this.$mytoast('成功',1)}">成功</button>
    <button @click="()=>{this.$mytoast('警告',2)}">警告</button>
    <button @click="()=>{this.$mytoast('失败',3)}">错误或失败</button>

在事件内调用


<script>
import mytoast from "../utils/Toast";
export default {
  methods: {
    go() {
      mytoast('成功');
    },
  },

};
</script>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/192638.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号