怎么在vue中利用moment实现一个倒计时效果
更新:HHH   时间:2023-1-7


怎么在vue中利用moment实现一个倒计时效果?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

vue是什么软件

Vue是一套用于构建用户界面的渐进式JavaScript框架,Vue与其它大型框架的区别是,使用Vue可以自底向上逐层应用,其核心库只关注视图层,方便与第三方库和项目整合,且使用Vue可以采用单文件组件和Vue生态系统支持的库开发复杂的单页应用。

<!-- 使用计算属性,传入截止日期 -->
<span>{{countDown(endDate)}}</span>
/*引入日期插件*/
import moment from 'moment'
export default {
 data() {
 return {
 now: moment(),
 endDate: '2019-05-07 08:20:00',
 }
 },
 mounted() {
 //定时更新当前时间
 setInterval(()=>{
 this.now = moment()
 },1000),
 //数字前补 0 
 // num传入的数字,n需要的字符长度
 PrefixInteger(num, n) {
 return (Array(n).join(0) + num).slice(-n);
 }
 },
 computed: {
 //计算属性,返回剩余时间
 countDown(){
 return function(endDate) {
 let m1 = this.now
 let m2 = moment(endDate)
 var du = moment.duration(m2 - m1, 'ms'),
 hours = du.get('hours'),
 mins = du.get('minutes'),
 ss = du.get('seconds');
 if(hours<=0 && mins<=0 && ss<=0) {
  return "已超时"
 }else {
  return this.PrefixInteger(hours,2) + ':' + this.PrefixInteger(mins,2) + ':' + this.PrefixInteger(ss,2)
 }
 }
 }
 },
}

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注天达云行业资讯频道,感谢您对天达云的支持。

返回web开发教程...