Does this Codepen example help?
codepen.io/AaronLeoCooper/pen/VMmwXr
The basic architecture here is:
Data flows down like this: App -> List -> ListItem (render to view).
And when an item was interacted with, the change in data flows like this: ListItem -> List -> App (update state), which triggers a re-render, and the newly updated list data flows back down the tree, back into the List and ListItems that need to be re-rendered.
For fun, I also added a Chart component, rendered by App. This is just there to show how the state stored inside App can also be used to pass into another component for display purposes. So in addition to Lists and ListItems being re-rendered upon changes to the lists state data, Chart and ChartBar components also re-render when lists and their items change in some way.
From your question I couldn't work out exactly what issues you were facing, but this is at least a working example of more or less (I hope!) what you're trying to create. Your list data could contain more data as required too to keep more data stored per list, such as a list description field, or a colour.
Hope that helps!