This technique is something to keep in mind. `useSelector` won't re-run if state and the callback haven't changed. By using `useCallback` you can fully memoize the call.  This won't re-run unless one of these has changed: state, `nodeID`, or `eventType` 