vue基础之组件3

本文介绍如何使用 Vue.js 创建一个 Toast 组件,该组件能够显示一条消息并在指定时间后自动消失。通过实例化组件并设置其可见性和持续时间来实现这一功能。

利用vue组件实现一个toast的显示,然后消失

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script src="../7-16/js/vue.js" type="text/javascript" charset="utf-8"></script>
		<style type="text/css">
			.toast{
				position: fixed;
				left: 50%;
				top: 50%;
				width: 200px;
				height: 100px;
				text-align: center;
				line-height: 100px;
				color: #FFFFFF;
				background: #000;
				opacity: .6;
			}
		</style>
	</head>
	<body>
		<div id="out">
			<button @click="tap()">登录</button>
		</div>
	</body>
	<script type="text/javascript">
		//创建组件,注册一个组件-----------组件的本质是JS对象,功能性组件
		var toast = Vue.component("toast",{
			template:"<div v-if='isshow' class='toast'>{{title}}</div>",
			data:function(){
				return{
					title:"登录成功",
					isshow:true,
					duration:2000
				}
			}
		});
		//封装函数,功能是调用组件
		var Toast = function(){
			//实例化组件-----组件对象实例化
			var toastVue = new toast({
				//el加载当前节点,没有就创建一个
				el:document.createElement("div")
			});
			document.body.appendChild(toastVue.$el);
			//自动消失
			setTimeout(function(){
				toastVue.isshow=false
			},toastVue.duration)
		};
		
		var vm = new Vue({
			el:"#out",
			methods:{
				tap(){
					Toast()
				}
			}
		})
	</script>
</html>

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值