Type/to search

分享模板引用错误追踪

Template
Created: 2020-01-28 20:39:09
Last modified: 6 years ago
1
Follow
5
Followers

使用方法,首先引用这个模板类库
在每一个脚本文件里面添加 $.fileLineMark("main", 35) 第一个参数:文件名 第二个参数:这行代码在文件里面的行号
并保证在追踪错误之前,这行代码被执行
最后在策略代码加上 main = $.tryfunc(main) 以保证所有的调用都通过try

在策略报错时,会自动有一行红字指出在哪个文件的哪一行

原理:托管着加载js代码的方式,是把所有的js代码,包含类库,合并成一个大文件载入;找出每个文件在大文件中的位置,最后报错时候,反向对应,即可知道具体报错的行号

img

Source
JavaScript
var fileStartLine = []
$.fileLineMark = function(file, line) {
    try{a=a+1}catch(ex){
        var markline = parseInt(ex.stack.split('\n')[3].split('(__FILE__:')[1].split(')')[0])
        fileStartLine.push([file, markline-line])
        fileStartLine.sort(function(a, b){
            return b[1] - a[1]
        })
    }
}

$.tryfunc = function(func) {
Comment
All comments (3)

    这个有意思,看看

    6 years ago

    哈哈,逆向考虑你们内部怎么做的~ 不完全准确,但是有帮助,嘿嘿

    6 years ago

    可以做的,只是当时没考虑

    6 years ago
  • 1
iPhone Download
Forums
PINE Language
© 2015 - ∞ INVENTOR PTE LTD (SG)