按照 consola 的风格改进色彩
This commit is contained in:
parent
2d7b927a78
commit
b78aef9a15
119
coco.js
Normal file
119
coco.js
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
// colors only works in nodejs cli
|
||||||
|
// consola works in nodejs and browser
|
||||||
|
|
||||||
|
const colors = require('colors')
|
||||||
|
|
||||||
|
function routeNow () {
|
||||||
|
const pageNow = globalThis.getCurrentPages()[globalThis.getCurrentPages().length - 1]
|
||||||
|
return pageNow()?.route || 'VueApp'
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports =
|
||||||
|
globalThis.uni && globalThis.UniApp // && globalThis.getApp?.()?.constructor?.name === 'Vue'
|
||||||
|
? {
|
||||||
|
// 客户端 uniapp
|
||||||
|
cclog (...args) {
|
||||||
|
console.log(
|
||||||
|
`%c ${new Date().toJSON()} ${routeNow()}`,
|
||||||
|
'background: #808080; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
|
||||||
|
...args
|
||||||
|
)
|
||||||
|
},
|
||||||
|
ccinfo (...args) {
|
||||||
|
console.info(
|
||||||
|
`%cℹ️ ${new Date().toJSON()} ${routeNow()}`,
|
||||||
|
'background: #0000ff; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
|
||||||
|
...args
|
||||||
|
)
|
||||||
|
},
|
||||||
|
ccgood (...args) {
|
||||||
|
console.info(
|
||||||
|
`%c✅ ${new Date().toJSON()} ${routeNow()}`,
|
||||||
|
'background: #2ecc71; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
|
||||||
|
...args
|
||||||
|
)
|
||||||
|
},
|
||||||
|
ccwarn (...args) {
|
||||||
|
console.warn(
|
||||||
|
`%c❗️ ${new Date().toJSON()} ${routeNow()}`,
|
||||||
|
'background: #f39c12; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
|
||||||
|
...args
|
||||||
|
)
|
||||||
|
},
|
||||||
|
ccerror (...args) {
|
||||||
|
console.error(
|
||||||
|
`%c❌ ${new Date().toJSON()} ${routeNow()}`,
|
||||||
|
'background: #c0392b; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
|
||||||
|
...args
|
||||||
|
)
|
||||||
|
},
|
||||||
|
ccdebug (...args) {
|
||||||
|
if (process.env.NODE_ENV !== 'production') {
|
||||||
|
console.debug(
|
||||||
|
`%c ${new Date().toJSON()} ${routeNow()}`,
|
||||||
|
'background: #ff0000; border-radius: 0.5em;color: white; font-weight: bold; padding: 2px 0.5em;',
|
||||||
|
...args
|
||||||
|
)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
cctitle (...args) {
|
||||||
|
console.debug(
|
||||||
|
`%c ${JSON.stringify(args)}`,
|
||||||
|
'border-color: black, border-radius: 0.5em;color: black; font-weight: bold; padding: 2px 0.5em; font-size:18px'
|
||||||
|
)
|
||||||
|
},
|
||||||
|
}
|
||||||
|
: typeof uniCloud === 'undefined'
|
||||||
|
? {
|
||||||
|
// 后台服务器命令行
|
||||||
|
cclog (...args) {
|
||||||
|
console.log(colors.blue(new Date().toJSON()), ...args)
|
||||||
|
},
|
||||||
|
ccinfo (...args) {
|
||||||
|
console.info('ℹ️', colors.green(new Date().toJSON()), ...args)
|
||||||
|
},
|
||||||
|
ccgood (...args) {
|
||||||
|
console.info('✅', colors.green(new Date().toJSON()), ...args)
|
||||||
|
},
|
||||||
|
ccwarn (...args) {
|
||||||
|
// console.warn will appear in pm2's error log
|
||||||
|
console.warn('❗️', colors.yellow(new Date().toJSON()), ...args)
|
||||||
|
},
|
||||||
|
ccerror (...args) {
|
||||||
|
// console.error will appear in pm2's error log
|
||||||
|
console.error('❌', colors.red(new Date().toJSON()), ...args)
|
||||||
|
},
|
||||||
|
ccdebug (...args) {
|
||||||
|
if ('development' === process.env.NODE_ENV) {
|
||||||
|
// 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
|
||||||
|
console.log(colors.rainbow(new Date().toJSON()), ...args)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
: {
|
||||||
|
// HBuilder 内置环境的 console 不支持颜色。为了检查是否支持颜色,可测试 uniCloud 是否存在(不存在说明在自己的server环境里),或 require('supports-color'),相应的返回不同的 ccXXX 函数。
|
||||||
|
// uniCloud 云空间
|
||||||
|
cclog (...args) {
|
||||||
|
console.log(new Date().toJSON(), ...args)
|
||||||
|
},
|
||||||
|
ccinfo (...args) {
|
||||||
|
console.info('ℹ️', new Date().toJSON(), ...args)
|
||||||
|
},
|
||||||
|
ccgood (...args) {
|
||||||
|
console.info('✅ ', new Date().toJSON(), ...args)
|
||||||
|
},
|
||||||
|
ccwarn (...args) {
|
||||||
|
// console.warn will appear in pm2's error log
|
||||||
|
console.warn('❗️', new Date().toJSON(), ...args)
|
||||||
|
},
|
||||||
|
ccerror (...args) {
|
||||||
|
// console.error will appear in pm2's error log
|
||||||
|
console.error('❌', new Date().toJSON(), ...args)
|
||||||
|
},
|
||||||
|
ccdebug (...args) {
|
||||||
|
if ('development' === process.env.NODE_ENV) {
|
||||||
|
// 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
|
||||||
|
console.log(new Date().toJSON(), ...args)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
83
cocon.js
83
cocon.js
@ -1,83 +0,0 @@
|
|||||||
const colors = require('colors')
|
|
||||||
|
|
||||||
// HBuilder 内置环境的 console 不支持颜色。为了检查是否支持颜色,可测试 uniCloud 是否存在(不存在说明在自己的server环境里),或 require('supports-color'),相应的返回不同的 ccXXX 函数。
|
|
||||||
|
|
||||||
function pageNow () {
|
|
||||||
return globalThis.getCurrentPages()[globalThis.getCurrentPages().length - 1]
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports =
|
|
||||||
globalThis.uni && globalThis.UniApp // && globalThis.getApp?.()?.constructor?.name === 'Vue' // 是前端 uniapp。
|
|
||||||
? {
|
|
||||||
cclog (...args) {
|
|
||||||
const pageName = pageNow()?.route || 'VueApp'
|
|
||||||
console.log('%c ' + JSON.stringify({ time: new Date().toJSON(), page: pageName }), 'color:blue;background:lightgrey', ...args)
|
|
||||||
},
|
|
||||||
ccinfo (...args) {
|
|
||||||
const pageName = pageNow()?.route || 'VueApp'
|
|
||||||
console.info('%c ' + JSON.stringify({ time: new Date().toJSON(), page: pageName }), 'color:green;background:lightgrey', ...args)
|
|
||||||
},
|
|
||||||
ccwarn (...args) {
|
|
||||||
const pageName = pageNow()?.route || 'VueApp'
|
|
||||||
console.warn('%c ' + JSON.stringify({ time: new Date().toJSON(), page: pageName }), 'color:orange;background:lightgrey', ...args)
|
|
||||||
},
|
|
||||||
ccerror (...args) {
|
|
||||||
const pageName = pageNow()?.route || 'VueApp'
|
|
||||||
console.error('%c ' + JSON.stringify({ time: new Date().toJSON(), page: pageName }), 'color:red;background:lightgrey', ...args)
|
|
||||||
},
|
|
||||||
ccdebug (...args) {
|
|
||||||
if (process.env.NODE_ENV !== 'production') {
|
|
||||||
const pageName = pageNow()?.route || 'VueApp'
|
|
||||||
console.debug('%c ' + JSON.stringify({ time: new Date().toJSON(), page: pageName }), 'color:cyan;background:lightgrey', ...args)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
cctitle (...args) {
|
|
||||||
const pageName = pageNow().route || 'VueApp'
|
|
||||||
console.debug('%c ' + JSON.stringify({ time: new Date().toJSON(), page: pageName }), 'color:cyan;background:lightgrey', ...args)
|
|
||||||
},
|
|
||||||
}
|
|
||||||
: typeof uniCloud === 'undefined'
|
|
||||||
? {
|
|
||||||
cclog (...args) {
|
|
||||||
console.log(colors.blue({ timeiso: new Date().toJSON() }), ...args)
|
|
||||||
},
|
|
||||||
ccinfo (...args) {
|
|
||||||
console.info(colors.green({ timeiso: new Date().toJSON() }), ...args)
|
|
||||||
},
|
|
||||||
ccerror (...args) {
|
|
||||||
// console.error will appear in pm2's error log
|
|
||||||
console.error(colors.red({ timeiso: new Date().toJSON() }), ...args)
|
|
||||||
},
|
|
||||||
ccwarn (...args) {
|
|
||||||
// console.warn will appear in pm2's error log
|
|
||||||
console.warn(colors.yellow({ timeiso: new Date().toJSON() }), ...args)
|
|
||||||
},
|
|
||||||
ccdebug (...args) {
|
|
||||||
if ('development' === process.env.NODE_ENV) {
|
|
||||||
// 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
|
|
||||||
console.log(colors.rainbow({ timeiso: new Date().toJSON() }), ...args)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
||||||
: {
|
|
||||||
cclog (...args) {
|
|
||||||
console.log({ timeiso: new Date().toJSON() }, ...args)
|
|
||||||
},
|
|
||||||
ccinfo (...args) {
|
|
||||||
console.info({ timeiso: new Date().toJSON() }, ...args)
|
|
||||||
},
|
|
||||||
ccerror (...args) {
|
|
||||||
// console.error will appear in pm2's error log
|
|
||||||
console.error({ timeiso: new Date().toJSON() }, ...args)
|
|
||||||
},
|
|
||||||
ccwarn (...args) {
|
|
||||||
// console.warn will appear in pm2's error log
|
|
||||||
console.warn({ timeiso: new Date().toJSON() }, ...args)
|
|
||||||
},
|
|
||||||
ccdebug (...args) {
|
|
||||||
if ('development' === process.env.NODE_ENV) {
|
|
||||||
// 在server的测试环境下. 注意在 uniCloud 环境下,`process.env.NODE_ENV` 不存在. 如要应用本方法,需要手动设置 `process.env.NODE_ENV`
|
|
||||||
console.log({ timeiso: new Date().toJSON() }, ...args)
|
|
||||||
}
|
|
||||||
},
|
|
||||||
}
|
|
@ -1,12 +1,13 @@
|
|||||||
{
|
{
|
||||||
"name": "wo-base-cocon",
|
"name": "wo-core-coco",
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "cocon.js",
|
"main": "coco.js",
|
||||||
"scripts": {},
|
"scripts": {},
|
||||||
"author": "",
|
"author": "",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"colors": "^1.4.0"
|
"colors": "^1.4.0",
|
||||||
|
"consola": "^2.15.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user