如果你要传个时间类型的字段到云函数里需要把他转为时间戳,不能直接传date类型,具体我也不知为何。
错误示范:
var lastSignDate = this.data.lastSignDate
console.log(lastSignDate)
wx.cloud.callFunction({
name: 'insertrecord',
data: {
signid: signid,
lastSignDate: lastSignDate
},
这种比较坑的是不会返回结果,你不知道错哪。
正确示范:
var lastSignDate = this.data.lastSignDate.getTime();
console.log(lastSignDate)
wx.cloud.callFunction({
name: 'insertrecord',
data: {
signid: signid,
lastSignDate: lastSignDate
},
可以返回结果,这里我直接return那个时间戳了,数据库到时候重新new Date()就好了:
1551793396000 signin.js? [sm]:208
{errMsg: "cloud.callFunction:ok", result: {…}}
其实按照道理应该数据库里存时间戳来代替date类型会方便一点,但观看代码不方便,我感觉重要地方可以用date类型来存。做比较的记录表可以加个时间戳(Number)类型的字段帮助做where查询。
时区问题暂时没有遇到,现在存时间都是用服务器时间存,不知道这样会有啥问题?
转载自原文链接, 如需删除请联系管理员。
原文链接:针对小程序云开发callFunction()踩坑,转载请注明来源!