Quiero usar los datos de la tienda dentro de mi acción asíncrona, pero cuando llamo al gancho useStore, aparece este error:
Llamada de gancho no válida. Los ganchos solo se pueden llamar dentro del cuerpo de un componente de función. Esto podría suceder por una de las siguientes razones:
Es posible que tenga versiones que no coincidan de React y el renderizador (como React DOM)
Podrías estar rompiendo las Reglas de los Hooks
Es posible que tenga más de una copia de React en la misma aplicación
export function getCommitsData() { const store = useStore(); return async function (dispatch: Function) { try { const commits = await axios.get(`url`); const commitsData = await commits.data; dispatch(getCommitsDataAction({ commitsData })); } catch (err) { await console.log(err); } }; }Sólo se le permite utilizar ganchos en
use y a las que se aplican las mismas reglas.En particular, no está permitido usar ganchos en los creadores de acciones, que es lo que parece estar haciendo.
Si está utilizando Redux Thunk, supongo que podría usar getState en su lugar. Alternativamente, puede usar el useStore dentro del componente y pasar la tienda al creador de la acción como argumento.