I have a list of events that is scrollable on the y axis, as below:
{events.map((event) => (
<li
ref={event.ref}
key={event.id}
>
{event.name)
</li>
))}
When clicking a button I would like the event I specify to scroll to the top of the above mapped list.
I am currently using useRef, but I am unsure how to specify the exact event I would like to scroll to the top.
For example, let's say I would like to scroll to the event with an id of 5, when clicking the button.
Here is my current code:
const eventRef = useRef(null);
const scrollToMyRef = () =>
eventRef.current.scrollIntoView({
behavior: "smooth",
block: "end",
inline: "nearest",
});
<button
onClick={() => scrollToMyRef()}
>
Click me
</button>