Repositorio de usuarios con persistencia en el sistema de archivos (archivo JSON).
Implementa operaciones CRUD utilizando fs/promises para interactuar con el archivo userData.json.
fs/promises
userData.json
UserFile
const repo = new UserFile();const nuevoUsuario = await repo.guardar({ nombre: "Ana", email: "ana@mail.com" }); Copy
const repo = new UserFile();const nuevoUsuario = await repo.guardar({ nombre: "Ana", email: "ana@mail.com" });
Actualiza un usuario existente por ID.
ID del usuario a actualizar.
Objeto con las claves a modificar.
Usuario actualizado o null si no se encontró.
const actualizado = await repo.actualizar(12345, { nombre: "Ana María" }); Copy
const actualizado = await repo.actualizar(12345, { nombre: "Ana María" });
Elimina un usuario por su ID.
ID del usuario a eliminar.
true si se eliminó, false si no existía.
true
false
const eliminado = await repo.eliminar(12345); Copy
const eliminado = await repo.eliminar(12345);
Guarda un nuevo usuario en el archivo.
Objeto con los datos del usuario.
Usuario guardado con un ID generado.
const nuevo = await repo.guardar({ nombre: "Lucía", email: "lucia@mail.com" }); Copy
const nuevo = await repo.guardar({ nombre: "Lucía", email: "lucia@mail.com" });
Devuelve un usuario por su ID numérico.
ID del usuario a buscar.
Usuario encontrado o null si no existe.
const user = await repo.obtenerPorId(12345); Copy
const user = await repo.obtenerPorId(12345);
Devuelve todos los usuarios almacenados.
Arreglo con todos los usuarios.
Devuelve un usuario que coincida con un filtro de propiedades.
Objeto con las claves y valores a filtrar.
Usuario que cumple con todas las condiciones o null.
const user = await repo.obtenerUno({ email: "ana@mail.com" }); Copy
const user = await repo.obtenerUno({ email: "ana@mail.com" });
Repositorio de usuarios con persistencia en el sistema de archivos (archivo JSON).
Implementa operaciones CRUD utilizando
fs/promises
para interactuar con el archivouserData.json
.UserFile
Example