Skip to content

Slow when action contains a Event object #29

Closed
@jackielii

Description

@jackielii

The cause of the problem is at:

The problem:
In react there is this bit of code:
onClick={this.props.goBack}
When the user click on this button, it calls react-router-redux's goBack action

In React router redux middleware:

function goBack(...args) {
  return {
    ...
    payload: { method: 'goBack', args }
  }
}

The following happened:

  1. user click on the button
  2. goBack fired with arguments of ReactProxy, and ReactEvent
  3. react-router-redux returns an action with payload of the above arguments
  4. redux-immutable-state-invariant stringify the whole react proxy and event tree.

It takes over a minute for that stringify to finish

Arguably the component author should've written:
onClick={() => this.props.goBack()}
However this is not a good practice of having another level of function just to work around the problem

If I understand correctly, the stringify here is only for displaying an error message? I reckon it should not try so hard to strigify everything.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions