vue.js实战——vue 实时时间

created:实例创建完成后调用,此阶段完成了数据的观测等,但尚未挂载,$el还不可用,需要初始化处理一些数据时会比较有用。

mounted:el挂载到实例上后调用,一般我们的第一个业务逻辑会在这里开始。

beforeDestroy:实例销毁之前调用,主要解绑一些使用addEventListener监听的事件等。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>实时时间</title>
<script src="vue.js"></script>
</head>
<body>
<div id="app">
{{date}}
</div>
<script>
//自个写的
/* new Vue({
el:"#app",
data:{
date:''
},
mounted:function(){
var self=this;
var time=setInterval(function(){
self.date=new Date();
},1000);
},
beforeDestory:function(){
clearInterval(time);
}
}) */
//标准代码
var app=new Vue({
el:'#app',
data:{
date:new Date()
},
mounted:function(){ //el挂载到实例上调用,一般我们第一个业务逻辑会在这里开始
var _this=this;
this.timer=setInterval(function(){
_this.date=new Date();
},1000);
},
beofreDestory:function(){
if(this.timer){
clearInterval(this.timer);
}
}
})
</script>
</body>
</html>
对比之下自己写的代码真的是,考虑的太少了,都没有判断setInterval对象是否存在
上一篇:洛谷 P3225 [HNOI2012]矿场搭建 解题报告


下一篇:MySql索引总结