在工作中经常遇见倒计时删除提醒的业务,这里对于时间的判断比较繁琐,例如本人遇见的业务逻辑需求:
直接上代码:
<span>{{(selectItem.remain_time)>(24*60*60*1000)? parseInt((selectItem.remain_time) / 1000 / 60 / 60 / 24) + '天'
: (deleteTime+selectItem.remain_time>getTomaro()?"明天":"今天")
}}{{
selectItem.remain_time>(24*60*60*1000)
? (parseInt(selectItem.remain_time % (1000*60*60*24)/1000/60/60) == 0?'': parseInt(selectItem.remain_time % (1000*60*60*24)/1000/60/60)+'小时'):this.getTime2(deleteTime+selectItem.remain_time)
}}后将被彻底删除</span>
这里的逻辑拆分是通过“多少天”和“今天或明天”进行判断,“多少小时”和“16:30”进行判断,巧妙使用三元表达式,我这里的selectItem.remain_time是30天的时间戳,这里的getTomaro()是获取明天凌晨零点的时间戳