<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>
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 };
import { NewToast } from "@/components/index.js";
Vue.use(NewToast);
but() {
this.$Toast("Are you ok ?");
},
效果图
这样一个简单的轻提示就好了,觉得样式丑的话,可以自己调一下。
记录一下今天使用vant中的Toast 轻提示,按照官方文档中的方法去使用发现报错使用不了。
Toast.success('成功文案');
Toast.fail('失败文案');
main.js中引用vant后直接调用Toast报错。
this.$toast.success("成功文案");
this.$toast.fail("失败文案");
和调用路由一样需要this点出来。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理