zoukankan      html  css  js  c++  java
  • 微信小程序云端函数class的方法需注意形式

    我随便写了下面的类

    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());
      }  
    //....

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

  • 相关阅读:
    Python 用SMTP发送邮件
    Python 用IMAP接收邮件
    E-mail Composition and Decoding
    用Python实现gmail邮箱服务,实现两个邮箱之间的绑定(中)
    【日志】-2013.10.31
    21本计算机数学相关的免费电子书【转】
    WordPress搭建Personal Blog【转】
    一句话点亮你的人生
    【日志】-2013.10.28
    转载-smarty教程(基本语法)
  • 原文地址:https://www.cnblogs.com/kevin-Y/p/12608714.html
Copyright © 2011-2022 走看看