why-did-you-render icon indicating copy to clipboard operation
why-did-you-render copied to clipboard

Diff function produces no output

Open jcollum-nutrien opened this issue 2 years ago • 2 comments

Start by rendering a page, get this result, click on item 1:

image

Save as a global:

image

When I run the global function the result is undefined:

image

I have seen this function produce detailed output before. So either I'm doing something wrong or there's a bug.

jcollum-nutrien avatar Aug 24 '22 22:08 jcollum-nutrien

Talked this over with another dev and the issue is probably due to circular references in the object. If you want to fix that:

const getCircularReplacer = () => {
  const seen = new WeakSet();
  return (key, value) => {
    if (typeof value === 'object' && value !== null) {
      if (seen.has(value)) {
        return;
      }
      seen.add(value);
    }
    return value;
  };
};


JSON.stringify(obj, getCircularReplacer());

jcollum-nutrien avatar Aug 25 '22 00:08 jcollum-nutrien

Related #250

jcollum-nutrien avatar Aug 26 '22 18:08 jcollum-nutrien