tengo un componente de reacción que toma una serie de objetos complejos y hace algunos cálculos costosos con ellos.
Quiero usar React.memo para evitar volver a renderizar si las matrices no han cambiado.
la comparación profunda puede ser costosa.
He pensado en una forma de verificar si la matriz ha cambiado y me pregunto por qué no puedo encontrar ningún ejemplo de personas que usen el método, ya que parece una solución tan simple.
¿Quizás me falta una razón por la que no debería usar el método?
¿Es esta una técnica de uso común?
Sé que puedo JSON. Stringificar los objetos y luego compararlos, ¿no es potencialmente costoso si los objetos son grandes?
quiero cambiar un campo de identificación único en el objeto cada vez que cambie cualquiera de los valores en el objeto
p.ej
const arrayOfLargeObjects = [obj1,obj2,obj3,.....and so on] if obj1 = {letter: a, moreNestedStuff: {blah blah},memoizationid: '1'}//id is longer in actual implementation changes to obj1 = {letter: b, moreNestedStuff: {blah blah},memoizationid: '2'} //this is all done imutabily details left out for brevity const stringify = (obj)=>obj.map(el.memoizationid).join('') const comparisonFunction = (a,b)=>stringify(a)===stringify(b) <MyComponent myArray={arrayOfLargeObjects}/> React.memo(MyComponent, comparisonFunction);