Aller au contenu principal

useGotoRecoilSnapshot(snapshot)

Ce hook renvoie un callback qui prend un Snapshot comme paramètre et mettra à jour le <RecoilRoot> actuel pour correspondre à cet état d'atome.

function useGotoRecoilSnapshot(): Snapshot => void

Exemple de transaction

Remarque importante : Cet exemple n'est pas efficace car il abonnera le composant à un nouveau rendu pour tous les changements d'état.

function TransactionButton(): React.Node {
const snapshot = useRecoilSnapshot(); // Subscribe to all state changes
const modifiedSnapshot = snapshot.map(({set}) => {
set(atomA, x => x + 1);
set(atomB, x => x * 2);
});
const gotoSnapshot = useGotoRecoilSnapshot();
return <button onClick={() => gotoSnapshot(modifiedSnapshot)}>Perform Transaction</button>;
}

Exemple de voyage dans le temps

Voir l'exemple de voyage dans le temps