• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

微信小程序云端函数class的方法需注意形式

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

我随便写了下面的类

class MyDate{
  constructor(dateStr) {
    var arr = dateStr.split(' ');
    var dateArr = arr[0].split('-');
    this.year = parseInt(dateArr[0]);
    this.month = parseInt(dateArr[1]); 
    this.day = parseInt(dateArr[2]);
    if(arr.length>1){
      var tarr = arr[1].split(':');
      this.hour = parseInt(tarr[0]);
      this.minute = parseInt(tarr[1]);
      this.sec = 0;
      if(tarr.length>2){
        this.sec = parseInt(tarr[2]);
      }    
    }
  }
  getDateTime=function() {
    return new Date(this.year,this.month-1,this.day,this.hour,this.minute,this.sec);
  }
  getDate=function() {
    return new Date(this.year,this.month-1,this.day);
  }
  getDateNumber=function() {
    return Date.parse(this.getDate());
  }  
}

本地调试的时候没有问题,但放在正式环境就报错:

调用失败 Error: errCode: -404011 cloud function execution error | errMsg: cloud.callFunction:fail requestID

 

云端测试报:{"errorCode":1,"errorMessage":"user code exception caught","stackTrace":"Unexpected token ="}

 

其实就是没有发布好,node的v.8.9估计是认为上面的js语法里有错误。而我本地的node是10.15版。解决也很简单,方法的定义改为以下的样子就好了:

//....
  getDateTime() {
    return new Date(this.year,this.month-1,this.day,this.hour,this.minute,this.sec);
  }
  getDate() {
    return new Date(this.year,this.month-1,this.day);
  }
  getDateNumber() {
    return Date.parse(this.getDate());
  }  
//....

看来还是自己多此一举呀,浪费了一个晚上的时间。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
    热门话题
    阅读排行榜

    扫描微信二维码

    查看手机版网站

    随时了解更新最新资讯

    139-2527-9053

    在线客服(服务时间 9:00~18:00)

    在线QQ客服
    地址:深圳市南山区西丽大学城创智工业园
    电邮:jeky_zhao#qq.com
    移动电话:139-2527-9053

    Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap