This repository was archived by the owner on Mar 12, 2025. It is now read-only.
  
  
  - 
                Notifications
    
You must be signed in to change notification settings  - Fork 197
 
Deeply nested object was detected
        jamesjryan edited this page Oct 4, 2017 
        ·
        4 revisions
      
    Have you got the following error?
Attempt to construct Immutable from a deeply nested object was detected. Have you tried to wrap an object with circular references (e.g. React element)?
It usually happens when seamless-immutable tries to wrap an object with circular references, like React element. For example:
Immutable([1,2,3]).map(function() { return <div /> })We catch this problem to prevent JavaScript engine from slowing down browser tab and ultimately failing with stack overflow. We do it only during development. Production build doesn't have this protection.
There are several alternative ways to fix the problem:
- Replace builtin 
mapmethod with lodash/underscoremap:_.map(Immutable([1,2,3]), function() { return <div /> }) - Call 
asMutablebefore callingmap:Immutable([1,2,3]).asMutable().map(function() { return <div /> }). 
Increase maximum stack depth by passing it as a third argument to Immutable. For example: Immutable(deepObject, null, 256). Default maximum stack depth is 64.