Vueタイムフィルタ

5614 ワード


<div id="app">
    <!--datah formatetime       -->
	<h1>    :{{date|formateTime}}</h1>
</div>
<script>
	//         : - -   : :  
	var	parseDate=function(datetime){
		return datetime<10?'0'+datetime:datetime;	
	}
	var app=new Vue({
		el:'#app',
		data:{
			date:new Date()
		},
		filters:{
			formateTime:function(val){
				var date=new Date(val);
				var year=date.getFullYear();
				var month=parseDate(date.getMonth()+1);
				var day=parseDate(date.getDate());
				var hours=parseDate(date.getHours());
				var min=parseDate(date.getMinutes());
				var sec=parseDate(date.getSeconds());
				return year+'-'+month+'-'+day+'-'+hours+":"+min+":"+sec;
			}
		},
		created:function(){
			var that=this;//     
			console.log(this);
			this.timer=setInterval(function(){
				that.date=new Date();
			},1000);
		},
		beforeDestroy:function(){
			if(this.timer){
				clearInterval(this.timer);
			}
		}
	})
</script>