Lucho por encontrar una manera de tener una garantía de que tengo los datos correctos después de que se llamen algunas funciones asíncronas. Tengo una lista de elementos con un controlador de clic asíncrono para cada elemento. Tengo un control deslizante que se abre cuando se hace clic en un elemento y se completa de forma asincrónica con algunos datos.
const onClickElement = async () => { // open slider // await fetch data to display }Al cerrar el control deslizante, tengo alguna funcionalidad asíncrona para eliminar los datos del control deslizante.
const onSliderClose = aync () => { // await async clear data 1 // await async clear data 2 }Si hago clic en cerrar el control deslizante e inmediatamente después, hago clic en otro elemento para volver a abrir el control deslizante, los nuevos datos se recuperan antes de que finalice el control deslizante onSliderClose. La funcionalidad del control deslizante de cierre se reanuda y borra todos los datos obtenidos anteriormente. Estoy usando reaccionar y redux para el almacenamiento de datos. ¡Gracias!
¡Use await con async!
const onClickElement = async () => { // open slider // fetch data to display await fetchData() }O alternativa
const onClickElement = async () => { // open slider // fetch data to display } onClickElement.then( () => { //Do what you have to do here })