plotly / react-cytoscapejs

React component for Cytoscape.js network visualisations

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Question: store selected Element as State

zirkelc opened this issue · comments

commented

I'm listening to the select and unselect events on nodes and edges and saving this as selectedElement state:

  React.useEffect(() => {
    cyRef?.on('select unselect', 'node, edge', (event) => {
        setSelectedElement(event.target);
    });

    return () => {
      cyRef && cyRef.off('select unselect');
    };
  }, [cyRef]); 

When I check the selectedElement state on the React Dev Tools, I see that I actually store an reference to an Array:
image

I think the selectedElement is type of SingularElementArgument, so a single item collection.

I was wondering if it does make any sense to store the element reference as state:
Would a second selection of the same element give me the same object reference again?
Would it make more sense to store the element.id()?

Are there any drawbacks when storing the element ref as state?