cocoscreator日志打印封装

背景

随着工作时间拉长和经手项目增多,代码规范性和严谨性越来越被自己重视起来。近期在做集福卡的时候,由于跟服务器对接的接口较多,在调试接口的期间代码里添加了不少日志打印信息(console.log),以至于在项目正式上线前,花了一部分时间去关闭一些不必要的调试信息。可能有些网友会说,直接全局搜索,在console前加注释符号//,当然这也是一个办法,但总有一些个别的日志信息需要保留一下,或者一旦出问题,需要开启日志的时候,你再一行一行的去解注释效率就很低。于是,想起刚毕业时候,每次项目上线我都要去一行一行挑选着屏蔽注释的时候,大佬就会说"你就不会写一个方法去打印日志,需要屏蔽的时候就屏蔽该方法内的一行输出语句就可以了。",当然大佬的原话不是这样的,当时的我也没有把大佬的意思理解到位,直到现在才理解那句话的含义。

日志打印控制类

/**
 * 日志控制类 @JiatTao 2020/01/20
 */
 let log = {

    /**
     * 调试
     * @param {描述信息} desc 
     * @param {打印参数 类型: 单个参数/数组/json对象} param 
     */
    debug(desc, param){
      desc = desc != undefined ? desc : '';
      param = param != undefined ? param : '';
      console.log('DEBUG日志', desc, param);
    },

    /**
     * 信息
     * @param {描述信息} desc 
     * @param {打印参数 类型: 单个参数/数组/json对象} param 
     */
    info(desc, param){
      desc = desc != undefined ? desc : '';
      param = param != undefined ? param : '';
      console.log('INFO 日志', desc, param);
    },

    /**
     * 警告
     * @param {描述信息} desc 
     * @param {打印参数 类型: 单个参数/数组/json对象} param 
     */
    warn(desc, param){
      desc = desc != undefined ? desc : '';
      param = param != undefined ? param : '';
      console.log('WARN 日志', desc, param);
    },

    /**
     * 错误
     * @param {描述信息} desc 
     * @param {打印参数 类型: 单个参数/数组/json对象} param 
     */
    err(desc, param){
      desc = desc != undefined ? desc : '';
      param = param != undefined ? param : '';
      console.log('ERR  日志', desc, param);
    },
 }

备注:这个使用js语言写的一个日志打印控制类,我把自己要打印的信息分为四个等级:1、调试debug: 在与后台对接网络接口时调用,需要关闭的时候,只需要把debug方法里面的console.log注释即可或者在该方法第一行添加一个return也可以。2、信息info: 项目发布上显示需要保留的一些打印信息,永不关闭。3、警告warn:代码中需要跑出警示信息的地方调用(视个人情况与习惯而定),永不关闭。4、错误err:在需要报错的地方使用,比如try…catch…或者接口响应失败的地方调用,永不关闭。
以上是刚写的一个日志打印控制类,是一个单独的js文件,方便后面的项目开发使用。但是写完后发现,在调用的时候有些不够方便,需要在使用的地方require该文件,大大降低了开发效率和使用性。在参考了creator插件系统后,完美解决了该问题。解决方法如下:
cocoscreator日志打印封装_第1张图片
至此,针对于cocoscreator开发的日志打印的封装就完成了。

原创不易,请勿白嫖,好人一生平安

安卓低端机适配补充:

/**
 * 日志控制类 @JiatTao 2020/01/20
 * 该文件导入为插件 不可写es6语法 否则低版本浏览器会报错 @JiaTao 2020/5/29
 */

'use strict';

var log = {

  /**
   * 调试
   * @param {描述信息} desc 
   * @param {打印参数 类型: 单个参数/数组/json对象} param 
   */
  debug: function debug(desc, param) {
    // return;
    desc = desc != undefined ? desc : '';
    param = param != undefined ? param : '';
    console.log('DEBUG日志', desc, param);
  },


  /**
   * 信息
   * @param {描述信息} desc 
   * @param {打印参数 类型: 单个参数/数组/json对象} param 
   */
  info: function info(desc, param) {
    desc = desc != undefined ? desc : '';
    param = param != undefined ? param : '';
    console.log('INFO 日志', desc, param);
  },


  /**
   * 警告
   * @param {描述信息} desc 
   * @param {打印参数 类型: 单个参数/数组/json对象} param 
   */
  warn: function warn(desc, param) {
    desc = desc != undefined ? desc : '';
    param = param != undefined ? param : '';
    console.log('WARN 日志', desc, param);
  },


  /**
   * 错误
   * @param {描述信息} desc 
   * @param {打印参数 类型: 单个参数/数组/json对象} param 
   */
  err: function err(desc, param) {
    desc = desc != undefined ? desc : '';
    param = param != undefined ? param : '';
    console.log('ERR  日志', desc, param);
  }
};

至此,完毕。

你可能感兴趣的:(CocosCreator)