自己模拟器上看,是这样的

但是预览到手机的时候,发现就不是 5小时前,而是“刚刚”。


查了电脑的事区设置以及手机上的时区设置,都是一样的。有没有人碰到过。

自己debug了一下:


'pubDate': getDateDiff(new Date(item['pubDate']).getTime()),


发现是getDateDiff这个函数引起的,如果没有用这个函数,两边的显示是一致的。各位大侠帮忙看下getDateDiff有啥问题,这个函数也是网上找的。

function getDateDiff(dateTimeStamp) {

  var result;

  var minute = 1000 * 60;

  var hour = minute * 60;

  var day = hour * 24;

  var halfamonth = day * 15;

  var month = day * 30;

  var now = new Date().getTime();

  var diffValue = now - dateTimeStamp;

  if (diffValue < 0) {

    return;

  }

  var monthC = diffValue / month;

  var weekC = diffValue / (7 * day);

  var dayC = diffValue / day;

  var hourC = diffValue / hour;

  var minC = diffValue / minute;

  if (monthC >= 1) {

    if (monthC <= 12)

      result = "" + parseInt(monthC) + "月前";

    else {

      result = "" + parseInt(monthC / 12) + "年前";

    }

  }

  else if (weekC >= 1) {

    result = "" + parseInt(weekC) + "周前";

  }

  else if (dayC >= 1) {

    result = "" + parseInt(dayC) + "天前";

  }

  else if (hourC >= 1) {

    result = "" + parseInt(hourC) + "小时前";

  }

  else if (minC >= 1) {

    result = "" + parseInt(minC) + "分钟前";

  } else {

    result = "刚刚";

  }

  return result;

};




展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • Rebekka

    8人对此回答表示赞同

    请告诉我你的item['pubDate']的值是什么格式的?你随便打印一个看看。

    展开
    8
    1回复
    发布于 6年前

    评论(1)

    收起评论

    • Connor 2019-03-05 09:50


      回复
  • Avery

    1人对此回答表示赞同

    2018-09-0419:11:10

    展开
    1
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部