weixin_41542494 2018-08-01 17:15 采纳率: 80%
浏览 1270
已采纳

小程序问题 关于时间转化问题

先上圖 图片说明

大佬们看一下 我图片上方是开发工具显示 但是到了手机端 却变成刚刚 我也查了一下 值没有传进去显示null, 这我就不懂了 我全程打印 都是对的 就是手机一预览就接不到值
麻烦大神帮我看看 下面是我的代碼

var Api = "https://www.xiabiapp.com"
var app = getApp()

Page({

data: {
Nav: ['送贝', '任务'],
NavTab: 0,
giftPage: [],
reward: [],
pageNum: 1,
createDate: [],

},
onLoad: function(options) {

},
onShow(){
var _this = this

wx.request({
  url: Api + '/gift/giftPage',
  data: {
    pageNum: 1,
    companyId: app.globalData.companyId
  },
  header: {
    'Content-Type': 'application/json'
  },
  method: 'POST',
  success(res) {
    console.log(res.data.list)
    var Time = []
    var Timeago = []
    var gift = res.data.list
    for (var i = 0; i < gift.length; i++) {
      var stringTime = gift[i].createDate
      var timestamp2 = new Date(stringTime).getTime()
      Time.push(timestamp2)
      _this.setData({
        Timeago: Time
      })
    } 
    console.log(Time)

    _this.setData({
      giftPage: res.data.list,

    })
  }
})
wx.request({
  url: Api + "/task/taskPage",
  data: {
    companyId: app.globalData.companyId,
    pageNum: 1
  },
  header: {
    "content-type": "application/json"
  },
  method: "POST",
  success(res) {

    var rcreateDate = []
    for (var i = 0; i < res.data.list.length; i++) {
      var rstringTime = res.data.list[i].createDate;
      var rtimestamp2 = new Date(rstringTime).getTime();
      rcreateDate.push(rtimestamp2)
    }
    var rTimeago = []
    for (var k = 0; k < rcreateDate.length; k++) {
      rTimeago.push(getDateDiff(rcreateDate[k]))
    }

    _this.setData({
      reward: res.data.list,
      rTimeago: rTimeago
    })
  }

})

},
NavTab: function(e) {
var NavTab = e.currentTarget.dataset.id
this.setData({
NavTab: NavTab
})
var _this = this
if (NavTab == 0) {
wx.request({
url: Api + '/gift/giftPage',
data: {
pageNum: 1,
companyId: app.globalData.companyId
},
header: {
'Content-Type': 'application/json'
},
method: 'POST',
success(res) {
console.log(res)
var createDate = []
for (var i = 0; i < res.data.list.length; i++) {
var stringTime = res.data.list[i].createDate;
var timestamp2 = new Date(stringTime).getTime();
createDate.push(timestamp2)
}
var Timeago = []
for (var k = 0; k < createDate.length; k++) {
Timeago.push(getDateDiff(createDate[k]))
}
_this.setData({
giftPage: [],
pageNum: 1,
Timeago: Timeago
})
_this.setData({
giftPage: res.data.list,
Timeago: Timeago
})
}
})
} else {
wx.request({
url: Api + "/task/taskPage",
data: {
companyId: app.globalData.companyId,
pageNum: 1
},
header: {
"content-type": "application/json"
},
method: "POST",
success(res) {
var rcreateDate = []
for (var i = 0; i < res.data.list.length; i++) {
var rstringTime = res.data.list[i].createDate;
var rtimestamp2 = new Date(rstringTime).getTime();
rcreateDate.push(rtimestamp2)
}
var rTimeago = []
for (var k = 0; k < rcreateDate.length; k++) {
rTimeago.push(getDateDiff(rcreateDate[k]))
}
_this.setData({
reward: [],
pageNum: 1,
rTimeago: rTimeago
})
_this.setData({
reward: res.data.list,
rTimeago: rTimeago
})
}

  })
}

},
onReachBottom(e) {
var NavTab = this.data.NavTab

if (NavTab == 0) {
  var pageNum = this.data.pageNum
  this.setData({
    pageNum: pageNum += 1
  })
  var giftPageArray = []
  var _this = this
  wx.request({
    url: Api + "/gift/giftPage",
    data: {
      companyId: app.globalData.companyId,
      pageNum: pageNum
    },
    header: {
      "content-type": "application/json"
    },
    method: "POST",
    success(res) {
      console.log(res)
      giftPageArray = _this.data.giftPage.concat(res.data.list)
      _this.setData({
        giftPage: giftPageArray
      })

    }
  })
} else if (NavTab == 1) {
  var pageNum = this.data.pageNum
  this.setData({
    pageNum: pageNum += 1
  })
  var rewardArray = []
  var _this = this
  wx.request({
    url: Api + "/task/taskPage",
    data: {
      companyId: app.globalData.companyId,
      pageNum: pageNum
    },
    header: {
      "content-type": "application/json"
    },
    method: "POST",
    success(res) {
      rewardArray = _this.data.reward.concat(res.data.list)
      _this.setData({
        reward: rewardArray
      })
    }


  })
}

},
giftbay(e) {
wx.navigateTo({
url: '/pages/selectFrom/selectFrom',
})
},
getReward(e) {
wx.navigateTo({
url: '../reward/reward',
})
},
Togift(e) {
var index = e.currentTarget.dataset.index
var giftPage = this.data.giftPage[index]
var acceptAvatarUrl = giftPage.acceptAvatarUrl
var acceptNickName = giftPage.acceptNickName
var acceptUserId = giftPage.acceptUserId
var userId = app.globalData.userId
wx.navigateTo({
url: '/pages/giftbay/giftbay?acceptNickName=' + acceptNickName + '&acceptUserId=' +
acceptUserId + '&acceptAvatarUrl=' + acceptAvatarUrl,
})
},
getImg(e) {

if (this.data.NavTab == 0) {
  var giftPage = this.data.giftPage
  var index = e.currentTarget.dataset.index
  var imgList = []
  imgList.push(giftPage[index].imageUrl)
  wx.previewImage({
    current: giftPage[index].imageUrl,
    urls: imgList
  })
} else if (this.data.NavTab == 1) {
  var reward = this.data.reward
  var index = e.currentTarget.dataset.index
  var imgList = []
  imgList.push(reward[index].imageUrl)
  wx.previewImage({
    current: reward[index].imageUrl,
    urls: imgList
  })
}

// for (var i = 0; i < giftPage.length; i++){
//   imgList.push(giftPage[i].imageUrl)
// }

},
getTask(e) {

var taskId = e.currentTarget.dataset.id
var index = e.currentTarget.dataset.index
var _this = this

wx.request({
  url: Api + '/task/accept',
  data: {
    taskId: taskId,
    acceptUserId: app.globalData.userId
  },
  header: {
    'Content-Type': 'application/json'
  },
  method: 'POST',
  success(res) {

    wx.showToast({
      title: res.data.msg,
      icon: 'none',
      duration: 3000,
    })
    _this.onLoad()
  }
})

},
refresh(e) {

var _this = this
wx.request({
  url: Api + "/task/taskPage",
  data: {
    companyId: app.globalData.companyId,
    pageNum: 1
  },
  header: {
    "content-type": "application/json"
  },
  method: "POST",
  success(res) {
    _this.setData({
      reward: res.data.list,
    })
  }

})

},
ToSign(e) {
wx.navigateTo({
url: '/pages/sign/sign?userId=' + app.globalData.userId,
})
},

})

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;

};

  • 写回答

4条回答 默认 最新

  • 天际的海浪 2018-08-02 08:39
    关注

    因为不同的操作系统或浏览器中,Date对象能够解析的日期字符串的格式有所不同。

    你看看rstringTime = res.data.list[i].createDate获取的日期字符串是什么格式。
    可能这种格式在你的手机浏览器中不支持。需要手动解析成年,月,日,时,分,秒等值传给new Date()
    如2018年8月2日15时30分54秒,就要解析为new Date(2018,7,2,15,30,54);(注意月份要比实际的值减1)

    例如:获取的日期字符串格式2018-08-02T15:05:50 可以这样解析

        for (var i = 0; i < res.data.list.length; i++) {
          var rstringTime = res.data.list[i].createDate;
          var arr = rstringTime.match(/\d+/g);
          var rtimestamp2 = new Date(arr[0]-0,arr[1]-1,arr[2]-0,arr[3]-0,arr[4]-0,arr[5]-0).getTime();
          rcreateDate.push(rtimestamp2)
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 ubuntu系统下挂载磁盘上执行./提示权限不够
  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 关于#r语言#的问题:差异分析前数据准备,报错Error in data[, sampleName1] : subscript out of bounds请问怎么解决呀以下是全部代码:
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码