f / f/react-wait

startWaiting with useEffect hook overrides waiters array

Abierto
#13 5 comentarios 5 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
JavaScript
Estrellas
306
Forks
28
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Hi there!
Thank you for this awesome library.
I experienced a kind of weird behavior while working with this library.

**Description**
if I use method startWaiting in useEffect hook like

```
useEffect(() => {
startWaiting('first');
startWaiting('second');
}, []);
```
**Result**
waiters array contains only 'second' waiter, so waiters array is overwritten.

the same issue would be in the example below:

component1:

```
const Component1 = () => {

useEffect(() => {
const fetchData = async () => {
startWaiting('first');
const response = await apiCall();
endWaiting('first');
}
fetchData();
}, []);

return (/*react markup and Wait component inside*/);
```

component2:

```
const Component2 = () => {

useEffect(() => {
const fetchData = async () => {
startWaiting('second');
const response = await anotherApiCall();
endWaiting('second');
}
fetchData();
}, []);

return (/*react markup and Wait component inside*/);
```

component3:

```
const Component3 = () =>
(


);
```

in this case, every time I am trying to receive waiters array it will contain only 'second'.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Reproduzca el problema usando las dos llamadas a startWaiting dentro de un useEffect y compare el array waiters resultante con el ejemplo separado de Component1 y Component2. Inspeccione los puntos de entrada de startWaiting y del estado de los waiters en el repositorio; se considera terminado cuando los dos waiters, 'first' y 'second', siguen disponibles hasta sus correspondientes llamadas a endWaiting.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript, react
Área
frontend
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.