Probabilmente mi sto perdendo qualcosa di molto ovvio e vorrei chiarirmi.
Ecco la mia comprensione.
In una componente di reazione ingenua, abbiamo states& props. L'aggiornamento statecon setStateesegue il rendering dell'intero componente. propssono per lo più di sola lettura e aggiornarli non ha senso.
In un componente di reazione che si iscrive a un redux store, tramite qualcosa di simile store.subscribe(render), ovviamente viene eseguito nuovamente il rendering ogni volta che il negozio viene aggiornato.
react-redux ha un helper connect()che inietta parte dell'albero degli stati (che è di interesse per il componente) e actionCreators per quanto propsriguarda il componente, di solito tramite qualcosa di simile
const TodoListComponent = connect(
mapStateToProps,
mapDispatchToProps
)(TodoList)
Ma con la consapevolezza che a setStateè essenziale per TodoListComponentreagire al cambiamento dell'albero di stato di redux (ri-rendering), non riesco a trovare alcun codice stateo setStaterelativo codice nel TodoListfile del componente. Si legge qualcosa del genere:
const TodoList = ({ todos, onTodoClick }) => (
<ul>
{todos.map(todo =>
<Todo
key={todo.id}
{...todo}
onClick={() => onTodoClick(todo.id)}
/>
)}
</ul>
)
Qualcuno può indicarmi la giusta direzione su ciò che mi manca?
PS Sto seguendo l'esempio della lista delle cose da fare in bundle con il pacchetto redux .