收藏
回答

云函数返回日期错误,有2处bug


第1个bug错误:云函数返回日期错误

https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/command/aggregate/AggregateCommand.hour.html

云函数返回的小时数、分钟数、秒数,都是错误的。

var date = db.serverDate(), //日期

我把云函数的日期环境变量配置改为key: TZ,Value: Asia/Shanghai 时区。也是返回错误的。

AggregateCommand.hour

hour: $.hour('$date')

AggregateCommand.minute

minute: $.minute('$date')

AggregateCommand.second

second: $.second('$date')


第2个bug错误:云函数中 返回 new Date() 中获取的 getMonth() 月份 比实际月份晚1个月。比如现在是6月,可返回的月份是5月份。

var newDate = new Date() //今天日期

var dateMonth = newDate.getMonth() //月

我把云函数的日期环境变量配置改为key: TZ,Value: Asia/Shanghai 时区。也是返回错误的。

回答关注问题邀请回答
收藏

2 个回答

  • Mr.Zhao
    Mr.Zhao
    2021-06-20

    获取月份这个不是BUG,月份是0-11 不是1-12

    2021-06-20
    有用 1
    回复 2
    • MR.Liang
      MR.Liang
      2021-06-22
      谢谢
      2021-06-22
      回复
    • MR.Liang
      MR.Liang
      2021-06-22
      还有个问题


      AggregateCommand.hour
      AggregateCommand.minute

      AggregateCommand.second



      这个三个返回的时间不对
      2021-06-22
      回复
  • MR.Liang
    MR.Liang
    2021-06-30

    有个更好的解决方案:

    https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/database/command/aggregate/AggregateCommand.dateToString.html

    日期操作符 dateToString 方法


          createDate: 1, //拉黑日期

          //年月日 时分秒

          dateYMDHM: $.dateToString({

            date: '$createDate',

            format: '%Y年%m月%d日 %H:%M:%S',

            timezone: 'Asia/Shanghai'

          }),

          dateFullYear: $.dateToString({ //年

            date: '$createDate',

            format: '%Y',

            timezone: 'Asia/Shanghai'

          }),

          dateMonth: $.dateToString({ //月

            date: '$createDate',

            format: '%m',

            timezone: 'Asia/Shanghai'

          }),

          dateDate: $.dateToString({ //日

            date: '$createDate',

            format: '%d',

            timezone: 'Asia/Shanghai'

          }),

          dateHour: $.dateToString({ //时

            date: '$createDate',

            format: '%H',

            timezone: 'Asia/Shanghai'

          }),

          dateMinutes: $.dateToString({ //分

            date: '$createDate',

            format: '%M',

            timezone: 'Asia/Shanghai'

          }),

          dateMillisecond: $.dateToString({ //秒

            date: '$createDate',

            format: '%S',

            timezone: 'Asia/Shanghai'

          }),

    2021-06-30
    有用
    回复
登录 后发表内容