Tracker重新计算功能的例外情况

Joe*_*dee 8 meteor

我有一个模板助手访问我的应用程序中的集合.但我已关闭反应性:

Template.homeBoxGroupsTpl.helpers({
    boxes: function () {
        return Boxes.find({},
            {
                sort: {
                    order: 1
                },
                reactive: (Session.get("homeCanvasTplReactive") || false)
            }
        );
    }
});
Run Code Online (Sandbox Code Playgroud)

在我的页面上插入一个新元素后,它会更新集合,Meteor将在浏览器控制台中抛出一个错误:

    Error: Exception from Tracker recompute function: reporters.js?1429904535194:67 
Error: Error: Bad index in range.getMember: 16
        at DOMRange.getMember (http://tidee-vm/packages/blaze.js?a5c324925e5f6e800a4c618d71caf2848b53bf51:586:11)
        at http://tidee-vm/packages/blaze.js?a5c324925e5f6e800a4c618d71caf2848b53bf51:2727:45
        at Object.Tracker.nonreactive (http://tidee-vm/packages/tracker.js?6d0890939291d9780f7e2607ee3af3e7f98a3d9c:593:12)
        at Object.Blaze.Each.eachView.onViewCreated.eachView.stopHandle.ObserveSequence.observe.changedAt (http://tidee-vm/packages/blaze.js?a5c324925e5f6e800a4c618d71caf2848b53bf51:2721:17)
        at http://tidee-vm/packages/observe-sequence.js?0532a9dd76dd78f543eb4d79a1e429df186d8bde:313:21
        at Function._.each._.forEach (http://tidee-vm/packages/underscore.js?0a80a8623e1b40b5df5a05582f288ddd586eaa18:164:22)
        at diffArray (http://tidee-vm/packages/observe-sequence.js?0532a9dd76dd78f543eb4d79a1e429df186d8bde:299:5)
        at http://tidee-vm/packages/observe-sequence.js?0532a9dd76dd78f543eb4d79a1e429df186d8bde:147:9
        at Object.Tracker.nonreactive (http://tidee-vm/packages/tracker.js?6d0890939291d9780f7e2607ee3af3e7f98a3d9c:593:12)
        at http://tidee-vm/packages/observe-sequence.js?0532a9dd76dd78f543eb4d79a1e429df186d8bde:121:15
Run Code Online (Sandbox Code Playgroud)

任何想法如何调试,或者它是一个流星问题?

Gae*_*lan 0

Meteor 的错误消息在除 Chrome 之外的所有浏览器中都很可怕,因为 Meteor 期望堆栈跟踪包含错误消息,但这只有 Chrome 才能完成。我不想这么说,但在调试 Meteor 应用程序时您可能必须使用 Chrome。:(