我期望在vue中定义一个函数,但是必须在vue中的data,和整个vue页面渲染完之后再去执行该函数,如果vue没有渲染完毕,就会报错,说我没有定义,找不到undefined;

	Vue.nextTick(function () {
  		alert('new message'); 
	})
该方法可以解决:

如我要向页面输出当前的时间戳对应的日期

[plain]  view plain  copy
 print ?
  1. Vue.nextTick(function () {  
  2.     var time_stamps = (new Date()).getTime();  
  3.     function add0(m){return m<10?'0'+m:m }  
  4.     function format(time_stamps)  
  5.     {  
  6. //time_stamp是整数,否则要parseInt转换  
  7.         var time = new Date(time_stamps);  
  8.         var y = time.getFullYear();  
  9.         var m = time.getMonth()+1;  
  10.         var d = time.getDate();  
  11.         var h = time.getHours();  
  12.         var mm = time.getMinutes();  
  13.         var s = time.getSeconds();  
  14.         return y+''+add0(m)+''+add0(d)+add0(h)+''+add0(mm)+''+add0(s);  
  15.     }  
  16.     var number = format(time_stamps);  
  17.     //alert(number);//结果  
  18.     add_revise.time_stamp = number;  
  19. })  



还有就是vue的生命周期也很重要





它可以总共分为8个阶段:
beforeCreate(创建前),
created(创建后),
beforeMount(载入前),
mounted(载入后),
beforeUpdate(更新前),
updated(更新后),
beforeDestroy(销毁前),
destroyed(销毁后)

Logo

前往低代码交流专区

更多推荐