无法在云函数端,通过doc.update或者doc.set更新date的值
发布于 6 年前 作者 kangyang 8390 次浏览 来自 问答
  • 当前 Bug 的表现(可附上截图)

云函数端,通过doc.update以及doc.set更新日期都失败,提示

Error: errCode: -401003 api parameter type error | errMsg: data.data.created_at is not JSON-serializable

  • 预期表现
  • 复现路径
  • 提供一个最简复现 Demo
exports.main = async (event, context) => {
  ///*
  let collectionName = event.collectionName;
  let templateData = event.data;//*/
 
  let id = templateData._id;
  delete templateData._id;
  return cloud.database().collection(collectionName).doc(id).update({
    data: templateData
  });
}
3 回复

你好,这是因为调用 wx.cloud.callFunction 时传入的 data 对象中的字段暂无法序列化 Date 对象,因此报错,后续我们会考虑提供序列化,请调用时使用 +new Date() 而不是 new Date(),即使用数字表示时间而不是 Date 对象

我也遇到这个问题,请解决了吗

看报错信息是代码的问题,templateData的值是不是不在预期内

回到顶部