[Solved][React] Exception from tracker recompute function?


#1

Hi,
i’m learning react in Meteor, and i’m rather puzzled by the non informative errors i get.

Anybody has an idea about where this error could come from ?

Exception from Tracker recompute function:
debug.js:41 RangeError: Maximum call stack size exceeded
    at Object.DOMProperty.isCustomAttribute (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1495:2), <anonymous>:264:11)
    at Object.DOMPropertyOperations.createMarkupForProperty (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1486:2), <anonymous>:102:28)
    at ReactDOMComponent.Mixin._createOpenTagMarkupAndPutListeners (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1882:2), <anonymous>:238:33)
    at ReactDOMComponent.Mixin.mountComponent (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1882:2), <anonymous>:198:12)
    at Object.ReactReconciler.mountComponent (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1360:2), <anonymous>:38:35)
    at Object.obj.(anonymous function) [as mountComponent] (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/backend.js:2130:20)
    at ReactCompositeComponentMixin.mountComponent (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1855:2), <anonymous>:247:34)
    at ReactPerf.measure.wrapper [as mountComponent] (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1351:2), <anonymous>:70:21)
    at Object.ReactReconciler.mountComponent (eval at <anonymous> (http://localhost:9090/assets/client.bundle.js:1360:2), <anonymous>:38:35)
    at Object.obj.(anonymous function) [as mountComponent] (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/backend.js:2130:20)

I guess there must be an infinite loop somewhere, but i don’t see where.
The component i’m inserting that seems to trigger the problem doesn’t contain any Meteor specific code and only use functions returning const through props.

Thank you !


#2

Would it be possible for you to give us an app that reproduces this stack trace with a minimal amount of code?

We’re interested in printing better errors for this stuff if at all possible, but it’s very hard to tell what’s going on (as you said) from that stack trace alone.


#3

I will try that sashko, thanks.


#4

Actually i was trying to auto-import a module, like that :

//in foo.jsx
import bar from "foo"

It’s understandable that i got an infinite loop problem…

Sorry ! :blush: