[每天进步一点点~] uni-app 时间戳判断为几分钟前、几小时前、几天前、几月前...

<template>
    <!-- time是时间戳,timeToDate是自定义将时间戳转成日期格式的方法 -->
    <view class="u-home-area article-time">{{ getDateDiff(timeToDate(time)) }}</view>
</template>

<script>
    export default {
        methods: {
             getDateDiff(data) {
                // 传进来的data必须是日期格式,不能是时间戳
                //var str = data;
                //将字符串转换成时间格式
                var timePublish = new Date(data);
                var timeNow = new Date();
                var minute = 1000 * 60;
                var hour = minute * 60;
                var day = hour * 24;
                var month = day * 30;
                var result = "2";
                
                var diffValue = timeNow - timePublish;
                var diffMonth = diffValue / month;
                var diffWeek = diffValue / (7 * day);
                var diffDay = diffValue / day;
                var diffHour = diffValue / hour;
                var diffMinute = diffValue / minute;
                
                // console.log('diffValue:'+diffValue+' ' +'diffMonth:'+diffMonth+' ' +'diffWeek:'+diffWeek+' ' +'diffDay:'+diffDay+' ' +'diffHour:'+diffHour+' ' +'diffMinute:'+diffMinute);
                
                if (diffValue < 0) {
                    alert("错误时间");
                }
                else if (diffMonth > 3) {
                    result = timePublish.getFullYear() + "-";
                    result += timePublish.getMonth() + "-";
                    result += timePublish.getDate();
                    alert(result);
                }
                else if (diffMonth > 1) {
                    result = parseInt(diffMonth) + "月前";
                }
                else if (diffWeek > 1) {
                    result = parseInt(diffWeek) + "周前";
                }
                else if (diffDay > 1 ) {
                    result = parseInt(diffDay) + "天前";
                }
                else if (diffHour > 1) {
                    result = parseInt(diffHour) + "小时前";
                }
                else if (diffMinute > 1) {
                    result = parseInt(diffMinute) + "分钟前";
                }
                else {
                    result = "刚刚";
                }
                return result;
            },
        }
    }
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值