Closed zZPiglet closed 4 years ago
不仅是这个脚本里,openapi有几处console.log(e)也只会输出[object object]
请使用: $.error(JSON.stringify(err, Object.getOwnPropertyNames(err))); 来避免显示错误。
谢谢。我看到openapi已经提供了不同的log api了。不过我说的是,openapi自己的代码里有裸的console.log(err)。我运行这个脚本的时候log里有[object object],只可能是openapi部分出的,没检查具体是哪个
破案了, https://github.com/zZPiglet/QuanX/blob/64b18d7e20d9aa1881e561fc0ef7a4b04f735711/Tasks/caiyun.js#L140
<<<140
$.info(location)
>>>
$.info(JSON.stringify(location))
不过后面openapi的确有几个error的callback里是console.log(e),是有问题的。
谢谢提醒,会改进一下OpenAPI的行为,提供一个对象的时候默认输出其Stringify后的结果
在这个提交已经修复了OpenAPI的此类问题。现在直接传入一个Object会先进行Stringify之后输出对应的log。如果无法进行stringify,则输出为[object]
this.node.fs.writeFileSync(e,JSON.stringify({}),{flag:"wx"},e=>console.log(e))
还有一点是这个console.log
会不会有问题?不过这个callback应该基本不可能用到。
this.node.fs.writeFileSync(e,JSON.stringify({}),{flag:"wx"},e=>console.log(e))
还有一点是这个console.log
会不会有问题?不过这个callback应该基本不可能用到。
这个console.log是由node处理的,node.js可以正确输出错误信息(即使e是一个对象)。不过这里可以改成$.error(e)比较统一。
不仅是这个脚本里,openapi有几处console.log(e)也只会输出[object object]