empecemos por las funciones callbacks mas simples
se ejecutan despues de x milisegundos:
setTimeout(function(){
console.log('soy un callback!')
}, 1000);
setTimeout(()=>{
console.log('soy un callback flecha!')
}, 2000);
ahora creemos otra que nos devuelve los datos de un usuario
let getUsuarioById = (id, myCallback)=>{
//supongamos que el sgt objeto es traido desde la BD
let usuario ={
id:id,
nombre:'israel',
apellido:'bazan'
};
myCallback(usuario); //ejecutamos el callback devolviendo el objeto usuario
};
//aqui llamamos a la funcion principal pero en el 2do parametro
//como sabemos que es una funcion callback que devuelve un objeto lo recibimos
//en la variable rpta
getUsuarioById(10, (rpta)=>{
console.log('usuario encontrado:',rpta);
});
lo cual va a imprimir
usuario encontrado: {id:10,nombre:'israel', apellido: 'bazan'}
Que pasaria si la busqueda del usuario no es exitosa?
debemos informar que sucedio un error, para esto es comun agregar un parametro extra de retorno
que hace referencia a un posible error.
let getUsuarioById = (id, myCallback)=>{
//supongamos que el sgt objeto es traido desde la BD
let usuario ={
id:id,
nombre:'israel',
apellido:'bazan'
};
if(id<=0){
myCallback(`el usuario con id: ${id} no existe`);
}else{
myCallback(null,usuario);
}
};
getUsuarioById(10, (error,rpta)=>{
if(error){
console.log(rpta);
}else{
console.log('Usuario encontrado:', rpta);
}
})
Suscribirse a:
Enviar comentarios (Atom)
linux ubuntu mint actualizar chrome
desde una terminal: $ sudo apt update $ sudo apt install google-chrome-stable
-
por consola y desde la raiz de tu proyecto php artisan --version
-
en nuestro proyecto creamos una carpeta llamada donde estaran todas nuestras clases, por ejemplo una llamada: MiApp adentro de esta irian b...
-
Integridad al nivel de la base de datos Oracle Oracle valida la integridad de la base de datos y presenta los siguientes mensajes de erro...
No hay comentarios:
Publicar un comentario