Meteor:如何知道哪个模板助手正在抛出异常

Meteor:如何知道哪个模板助手正在抛出异常,meteor,Meteor,在更改了代码中许多地方使用的会话变量的语义之后,我剩下的是一个回归,在这里我在页面加载时得到了“模板帮助器中的异常”错误 所以我搞砸了,在某个地方我使用了这个变量,但我没有修改代码来处理新的语义。但我找不到 回溯没有给我任何线索,因为它只有meteor javascript文件的条目,没有关于我的应用程序文件的信息: Exception in template helper: Error: $in needs an array at Error (native) at Obje

在更改了代码中许多地方使用的会话变量的语义之后,我剩下的是一个回归,在这里我在页面加载时得到了“模板帮助器中的异常”错误

所以我搞砸了,在某个地方我使用了这个变量,但我没有修改代码来处理新的语义。但我找不到

回溯没有给我任何线索,因为它只有meteor javascript文件的条目,没有关于我的应用程序文件的信息:

 Exception in template helper: Error: $in needs an array
    at Error (native)
    at Object.ELEMENT_OPERATORS.$in.compileElementSelector (http://jesper-lab:3000/packages/minimongo.js?e8806aa7782b729b2517ebc0cd10b321667f1427:1887:15)
    at http://jesper-lab:3000/packages/minimongo.js?e8806aa7782b729b2517ebc0cd10b321667f1427:1569:19
    at Function._.each._.forEach (http://jesper-lab:3000/packages/underscore.js?0a80a8623e1b40b5df5a05582f288ddd586eaa18:164:22)
    at operatorBranchedMatcher (http://jesper-lab:3000/packages/minimongo.js?e8806aa7782b729b2517ebc0cd10b321667f1427:1549:5)
    at compileValueSelector (http://jesper-lab:3000/packages/minimongo.js?e8806aa7782b729b2517ebc0cd10b321667f1427:1453:12)
    at http://jesper-lab:3000/packages/minimongo.js?e8806aa7782b729b2517ebc0cd10b321667f1427:1432:9
    at Function._.each._.forEach (http://jesper-lab:3000/packages/underscore.js?0a80a8623e1b40b5df5a05582f288ddd586eaa18:164:22)
    at compileDocumentSelector (http://jesper-lab:3000/packages/minimongo.js?e8806aa7782b729b2517ebc0cd10b321667f1427:1415:5)
    at _.extend._compileSelector (http://jesper-lab:3000/packages/minimongo.js?e8806aa7782b729b2517ebc0cd10b321667f1427:1392:12)

是否有任何方法可以找出哪个模板帮助程序引发此异常?(除了在所有断点中放置断点(数百…)

我不确定这是最好的方法,但我要做的是使用一个通用的try\u catch函数:

@try_catch = (f) ->
    return (args) ->
        try
            f(args)
        catch e
            console.log e

并将其包装在我要调试的每个模板帮助器周围。

您找到解决方案了吗?恐怕我从来没有找到过。最后我把事情分成小块,直到我把问题隔离出来。