u
This commit is contained in:
		
							parent
							
								
									8b32a12003
								
							
						
					
					
						commit
						1514a03e59
					
				
							
								
								
									
										56
									
								
								coco.js
									
									
									
									
									
								
							
							
						
						
									
										56
									
								
								coco.js
									
									
									
									
									
								
							@ -2,6 +2,7 @@
 | 
				
			|||||||
// consola works in nodejs and browser
 | 
					// consola works in nodejs and browser
 | 
				
			||||||
// chalk 和 colors 用法类似。
 | 
					// chalk 和 colors 用法类似。
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					const util = require('util')
 | 
				
			||||||
const colors = require('colors')
 | 
					const colors = require('colors')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function routeNow () {
 | 
					function routeNow () {
 | 
				
			||||||
@ -9,6 +10,10 @@ function routeNow () {
 | 
				
			|||||||
  return pageNow?.route || 'VueApp'
 | 
					  return pageNow?.route || 'VueApp'
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function deepInspect (args = [], colors = false) {
 | 
				
			||||||
 | 
					  return args.map((arg) => util.inspect(arg, { showHidden: false, depth: null, colors }))
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module.exports =
 | 
					module.exports =
 | 
				
			||||||
  globalThis.uni && globalThis.UniApp // && globalThis.getApp?.()?.constructor?.name === 'Vue'
 | 
					  globalThis.uni && globalThis.UniApp // && globalThis.getApp?.()?.constructor?.name === 'Vue'
 | 
				
			||||||
    ? {
 | 
					    ? {
 | 
				
			||||||
@ -17,35 +22,35 @@ module.exports =
 | 
				
			|||||||
        console.log(
 | 
					        console.log(
 | 
				
			||||||
          `%c ${new Date().toJSON()} [LG] ${routeNow()}`,
 | 
					          `%c ${new Date().toJSON()} [LG] ${routeNow()}`,
 | 
				
			||||||
          'background: #808080; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
					          'background: #808080; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
				
			||||||
            ...args
 | 
					          ...deepInspect(args)
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      ccinfo (...args) {
 | 
					      ccinfo (...args) {
 | 
				
			||||||
        console.info(
 | 
					        console.info(
 | 
				
			||||||
          `%c ${new Date().toJSON()} [IF] ${routeNow()}`,
 | 
					          `%c ${new Date().toJSON()} [IF] ${routeNow()}`,
 | 
				
			||||||
          'background: #0000ff; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
					          'background: #0000ff; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
				
			||||||
            ...args
 | 
					          ...deepInspect(args)
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      ccgood (...args) {
 | 
					      ccgood (...args) {
 | 
				
			||||||
        console.info(
 | 
					        console.info(
 | 
				
			||||||
          `%c ${new Date().toJSON()} [OK] ${routeNow()}`,
 | 
					          `%c ${new Date().toJSON()} [OK] ${routeNow()}`,
 | 
				
			||||||
          'background: #2ecc71; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
					          'background: #2ecc71; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
				
			||||||
            ...args
 | 
					          ...deepInspect(args)
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      ccwarn (...args) {
 | 
					      ccwarn (...args) {
 | 
				
			||||||
        console.warn(
 | 
					        console.warn(
 | 
				
			||||||
          `%c ${new Date().toJSON()} [WA] ${routeNow()}`,
 | 
					          `%c ${new Date().toJSON()} [WA] ${routeNow()}`,
 | 
				
			||||||
          'background: #f39c12; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
					          'background: #f39c12; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
				
			||||||
            ...args
 | 
					          ...deepInspect(args)
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      ccerror (...args) {
 | 
					      ccerror (...args) {
 | 
				
			||||||
        console.error(
 | 
					        console.error(
 | 
				
			||||||
          `%c ${new Date().toJSON()} [ER] ${routeNow()}`,
 | 
					          `%c ${new Date().toJSON()} [ER] ${routeNow()}`,
 | 
				
			||||||
          'background: #c0392b; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
					          'background: #c0392b; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
				
			||||||
            ...args
 | 
					          ...deepInspect(args)
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
      ccdebug (...args) {
 | 
					      ccdebug (...args) {
 | 
				
			||||||
@ -53,7 +58,7 @@ module.exports =
 | 
				
			|||||||
          console.debug(
 | 
					          console.debug(
 | 
				
			||||||
            `%c ${new Date().toJSON()} [DB] ${routeNow()}`,
 | 
					            `%c ${new Date().toJSON()} [DB] ${routeNow()}`,
 | 
				
			||||||
            'background: #ff0000; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
					            'background: #ff0000; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
 | 
				
			||||||
              ...args
 | 
					            ...deepInspect(args)
 | 
				
			||||||
          )
 | 
					          )
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      },
 | 
					      },
 | 
				
			||||||
@ -64,26 +69,26 @@ module.exports =
 | 
				
			|||||||
        // HBuilder 内置环境的 console 不支持颜色。为了检查是否支持颜色,测试 uniCloud 是否存在(不存在说明在自己的server环境里),
 | 
					        // HBuilder 内置环境的 console 不支持颜色。为了检查是否支持颜色,测试 uniCloud 是否存在(不存在说明在自己的server环境里),
 | 
				
			||||||
        // 或 require('supports-color'),相应的返回不同的函数。
 | 
					        // 或 require('supports-color'),相应的返回不同的函数。
 | 
				
			||||||
        cclog (...args) {
 | 
					        cclog (...args) {
 | 
				
			||||||
          console.log(new Date().toJSON(), '[LG]', ...args)
 | 
					          console.log(new Date().toJSON(), '[LG]', ...deepInspect(args))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccinfo (...args) {
 | 
					        ccinfo (...args) {
 | 
				
			||||||
          console.info(new Date().toJSON(), '[IF]', ...args)
 | 
					          console.info(new Date().toJSON(), '[IF]', ...deepInspect(args))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccgood (...args) {
 | 
					        ccgood (...args) {
 | 
				
			||||||
          console.info(new Date().toJSON(), '[OK]', ...args)
 | 
					          console.info(new Date().toJSON(), '[OK]', ...deepInspect(args))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccwarn (...args) {
 | 
					        ccwarn (...args) {
 | 
				
			||||||
          // console.warn will appear in pm2's error log
 | 
					          // console.warn will appear in pm2's error log
 | 
				
			||||||
          console.warn(new Date().toJSON(), '[WA]', ...args)
 | 
					          console.warn(new Date().toJSON(), '[WA]', ...deepInspect(args))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccerror (...args) {
 | 
					        ccerror (...args) {
 | 
				
			||||||
          // console.error will appear in pm2's error log
 | 
					          // console.error will appear in pm2's error log
 | 
				
			||||||
          console.error(new Date().toJSON(), '[ER]', ...args)
 | 
					          console.error(new Date().toJSON(), '[ER]', ...deepInspect(args))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccdebug (...args) {
 | 
					        ccdebug (...args) {
 | 
				
			||||||
          if ('production' !== process.env.NODE_ENV) {
 | 
					          if ('production' !== process.env.NODE_ENV) {
 | 
				
			||||||
            // 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
 | 
					            // 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
 | 
				
			||||||
            console.log(new Date().toJSON(), '[DB]', ...args)
 | 
					            console.log(new Date().toJSON(), '[DB]', ...deepInspect(args))
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
@ -91,26 +96,41 @@ module.exports =
 | 
				
			|||||||
        // 后台服务器命令行。注意如果输出重定向到文件里,会有 ESC[34m2023-10-07T12:32:00.915ZESC[39m 这样的特殊标识。
 | 
					        // 后台服务器命令行。注意如果输出重定向到文件里,会有 ESC[34m2023-10-07T12:32:00.915ZESC[39m 这样的特殊标识。
 | 
				
			||||||
        // 在 pm2 里,为了防止特殊标志,可用 --no-color
 | 
					        // 在 pm2 里,为了防止特殊标志,可用 --no-color
 | 
				
			||||||
        cclog (...args) {
 | 
					        cclog (...args) {
 | 
				
			||||||
          console.log(colors.blue(new Date().toJSON()), '[LG]', ...args)
 | 
					          console.log(colors.bgWhite(new Date().toJSON()), colors.bgBlue('[LG]'), ...deepInspect(args, true))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccinfo (...args) {
 | 
					        ccinfo (...args) {
 | 
				
			||||||
          console.info(colors.blue(new Date().toJSON()), '[IF]', ...args)
 | 
					          console.info(colors.bgWhite(new Date().toJSON()), colors.bgBlue('[IF]'), ...deepInspect(args, true))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccgood (...args) {
 | 
					        ccgood (...args) {
 | 
				
			||||||
          console.info(colors.green(new Date().toJSON()), '[OK]', ...args)
 | 
					          console.info(colors.bgWhite(new Date().toJSON()), colors.bgGreen('[OK]'), ...deepInspect(args, true))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccwarn (...args) {
 | 
					        ccwarn (...args) {
 | 
				
			||||||
          // console.warn will appear in pm2's error log
 | 
					          // console.warn will appear in pm2's error log
 | 
				
			||||||
          console.warn(colors.yellow(new Date().toJSON()), '[WA]', ...args)
 | 
					          console.warn(colors.bgWhite(new Date().toJSON()), colors.bgYellow('[WA]'), ...deepInspect(args, true))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccerror (...args) {
 | 
					        ccerror (...args) {
 | 
				
			||||||
          // console.error will appear in pm2's error log
 | 
					          // console.error will appear in pm2's error log
 | 
				
			||||||
          console.error(colors.red(new Date().toJSON()), '[ER]', ...args)
 | 
					          console.error(colors.bgWhite(new Date().toJSON()), colors.bgRed('[ER]'), ...deepInspect(args, true))
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
        ccdebug (...args) {
 | 
					        ccdebug (...args) {
 | 
				
			||||||
          if ('production' !== process.env.NODE_ENV) {
 | 
					          if ('production' !== process.env.NODE_ENV) {
 | 
				
			||||||
            // 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
 | 
					            // 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
 | 
				
			||||||
            console.log(colors.rainbow(new Date().toJSON()), '[DB]', ...args)
 | 
					            console.log(colors.rainbow(new Date().toJSON()), colors.rainbow('[DB]'), ...deepInspect(args, true))
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
        },
 | 
					        },
 | 
				
			||||||
 | 
					        ccinput (headers, path, indata) {
 | 
				
			||||||
 | 
					          console.log(colors.bgWhite(new Date().toJSON()), colors.bgCyan('[LG] (Request-Headers)'), colors.cyan(headers))
 | 
				
			||||||
 | 
					          console.log(colors.bgWhite(new Date().toJSON()), colors.bgBlue(`[IF] (IN) ${path}`), colors.blue(util.inspect(indata, { showHidden: false, depth: null, colors: false }))) // 已经被  colors.xxx 进行上色了
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        ccoutput (path, outdata) {
 | 
				
			||||||
 | 
					          console.log(colors.bgWhite(new Date().toJSON()), colors.bgGreen(`[OK] (OUT) ${path}`), colors.green(util.inspect(outdata, { showHidden: false, depth: null, colors: false }))) // 已经被  colors.xxx 进行上色了
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        ccexcept (path, error) {
 | 
				
			||||||
 | 
					          outdata = { _state: 'WOBASE_EXCEPTION', error }
 | 
				
			||||||
 | 
					          console.error(colors.bgWhite(new Date().toJSON()), colors.bgRed(`[ER] (OUT) ${path}`), colors.red(util.inspect(outdata, { showHidden: false, depth: null, colors: true })))
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        ccunknown (path) {
 | 
				
			||||||
 | 
					          console.warn(colors.bgWhite(new Date().toJSON()), colors.bgYellow(`[WA] (OUT) ${path}`), colors.yellow({ _state: 'WOBASE_API_UNKNOWN', response: 401 }))
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user