De originele staat uit een draft halen
Deze pagina is vertaald door PageTurner AI (beta). Niet officieel goedgekeurd door het project. Een fout gevonden? Probleem melden →
Immer biedt een named export original die het originele object ophaalt uit de geproxiede instantie binnen produce (of geeft undefined terug voor niet-geproxiede waarden). Dit is bijvoorbeeld handig bij het zoeken naar nodes in een boomstructuur met strikte gelijkheid.
import {original, produce} from "immer"
const baseState = {users: [{name: "Richie"}]}
const nextState = produce(baseState, draftState => {
original(draftState.users) // is === baseState.users
})
Wil je alleen weten of een waarde een geproxiede instantie is? Gebruik de isDraft functie! Let op: original kan niet worden aangeroepen op objecten die geen drafts zijn.
import {isDraft, produce} from "immer"
const baseState = {users: [{name: "Bobby"}]}
const nextState = produce(baseState, draft => {
isDraft(draft) // => true
isDraft(draft.users) // => true
isDraft(draft.users[0]) // => true
})
isDraft(nextState) // => false