Estoy creando una aplicación usando React-Use-Cart. Estoy usando el enlace getItem para detectar cambios en el precio. Es realmente simple, y así es como funciona: si el artículo tiene una cantidad superior a 0, devolverá el precio o si es 0, devolverá indefinido.
Entonces, aquí está mi programa:
const totalitem = getItem(products.id).itemTotal; const totalitem2 = JSON.stringify(totalitem);y
<h1>{totalitem === "undefined" ? "Zero!" : totalitem2}</h1>¡Esto no está funcionando! Cuando totalitem llega a 0, que no está definido, React DOM arroja un error:
TypeError no capturado: no se pueden leer las propiedades de undefined (leyendo 'itemTotal')
Realmente no sé cómo resolver este problema, y estoy bastante seguro de que es común. ¿Por favor, puede alguien ayudarme? Muchas gracias por adelantado.
El primer problema (que desencadena el error) se debe al acceso a la propiedad itemTotal en undefined . Puede usar el encadenamiento opcional para resolver esto.
const totalitem = getItem(products.id)?.itemTotal; const totalitem2 = JSON.stringify(totalitem); El segundo problema es verificar "undefined" como una cadena. Debe estar sin comillas.
<h1>{totalitem === undefined ? "Zero!" : totalitem2}</h1>