Docs Menu
Docs Home
/ /
SDK de React Native

CRUD - SDK de React Native

Dentro de un RealmProviderPuedes acceder a un reino con el gancho useRealm(). Luego, puedes crear objetos de reino usando un Bloque de transacciónRealm.write().

Todas las operaciones dentro de una transacción de escritura son atómicasSi falla una operación en la transacción de escritura, falla toda la transacción, Realm genera un error y no se aplican cambios del bloque de transacción al reino.

Cada operación de escritura debe ocurrir en una transacción de escritura.

const CreatePersonInput = () => {
const [name, setName] = useState('');
const realm = useRealm();
const handleAddPerson = () => {
realm.write(() => {
realm.create('Person', {_id: PERSON_ID, name: name, age: 25});
});
};
return (
<>
<TextInput value={name} onChangeText={setName} />
<Button
onPress={() => handleAddPerson()}
title='Add Person'
/>
</>
);
};

Un dominio determinado solo procesa una transacción de escritura a la vez. Al realizar una transacción de escritura, el dominio la añade a una cola. El dominio evalúa cada transacción en el orden en que llega.

Después de procesar una transacción, Realm la confirma o la cancela:

  • Tras una confirmación, el dominio aplica todas las operaciones de la transacción. Una vez aplicadas, actualiza automáticamente las consultas activas. Notifica a los oyentes sobre la creación, modificación y eliminación de objetos.

    • Al usar Sync, el SDK también pone en cola los cambios para enviarlos a Atlas App Services. El SDK envía estos cambios cuando hay una red disponible.

    • Después de una confirmación, los objetos y colecciones devueltos por useQuery o useObject se vuelven a renderizar para incluir los cambios relevantes.

  • Realm no aplica ninguna operación en una transacción cancelada. Realm cancela una transacción si una operación falla o no es válida.

Volver

Datos geoespaciales

En esta página