Necesito solicitar un punto final cada 1 segundo y con esa respuesta (alrededor de 30 arreglos) actualizar el estado del contexto de React y la interfaz de usuario. Está funcionando, pero en algún momento se volvió tan lento y Chrome comenzó a comportarse de manera extraña. ¿Cuál es la mejor manera de resolver esto? con alguna biblioteca como lodash?
Estado de gancho/contexto:
const [stateData, setStateData] = useState(null);El siguiente método es el que se activa cada X segundo, donde X puede ser [1,10,15,20] segundos
const subscribeOb = async (): Promise<void> => { await m?.subscribe((event) => { getData() }); };Este método es el que se llama una vez que se activa la suscripción.
const getData = async (): Promise<void> => { try { const { a, b } = await generalObj?.data(); const currentA = (stateData?.asks as Data[]) || []; const currentB = (stateData?.bids as Data[]) || []; const newObj = { asks: [...a, ...currentA], bids: [...b, ...currentB], }; setStateData(newObj); // this is from the hook in the context } catch (e) { console.log("Error found while getting Data", e); } };