一、简介
- utools的插件当遇到报错时,是没有任何反馈的,当然,也可以选择分离出插件窗口,在插件窗口中调出开发者工具查看报错信息,但是对于使用过程的任何报错,我们可能会希望能够及时的反馈。
image
image
二、实现原理
- 实现error的报错回调,来执行报错时的操作,这里还用到了child_process模块用于打开文件;
- 具体的流程是把报错信息写入txt文件,打开该txt文件。该模块需要在preload.js里加载。
function __init__(){
let errorPath = __dirname+"\\errorLog.txt"
window.onerror = function (message,fileName,lineno,colno,err) {
MOD.FILE_SYS.open(errorPath,"w",0644,function(e,fd){
MOD.FILE_SYS.write(fd,err.stack,0,'utf8',function(e){
MOD.FILE_SYS.closeSync(fd);
let exec = require('child_process').exec
exec('explorer.exe "%s"'.format(errorPath))
})
});
}
}
module.exports = {
__init__,
};