Digamos que quiero obtener el nombre de alguien de una base de datos de Firebase para renderizar en JSX para un proyecto de React Native. Quiero renderizar algo de la siguiente manera
return( <View> <Text>{name} retrieved data!</Text> </View>)Donde el nombre es algunos datos almacenados en la base de datos en tiempo real. Para obtener la variable "nombre", necesitaría hacer una llamada asíncrona a la base de datos. Sin embargo, solo quiero representar el JSX si tengo el valor correcto para el nombre. ¿Cómo puedo hacer esto? Me doy cuenta de que este es un ejemplo simple, pero ese era el punto, ya que pasé horas tratando de encontrar la respuesta a una versión más compleja de esto. Al intentar hacer esto, obtendría un error ya que el nombre no estaba definido en el momento de la representación debido a la llamada asíncrona a la base de datos.
Si aún no tiene los datos, puede renderizar algo más mientras aún está cargando.
Por ejemplo algo como:
if (!name) { return null } return ( <View> <Text>{name} retrieved data!</Text> </View> )Algún tipo de indicador de carga probablemente sería mejor que el nulo.