
Brayan Ramirez Alzate
PreguntaNo entiendo bien este mensaje de error y por ende no soy capaz de resolverlo
Al momento del built no me sale ningún en mi consola de vs pero en el navegador me sale esto

Brayan Ramirez Alzate
Muchas gracias buen hombre

Juan Castro
En el componente ChangeAlert no solo debes retornar algo si se cumple X condicional, sino que también debes tener un else para renderizar algo en el otro caso, incluso si ese otro render del else es un null. :wink:

Brayan Ramirez Alzate
Ahora me sale este error
Uncaught Error: ChangeAlert(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null. at reconcileChildFibers (react-dom.development.js:14169:1) at reconcileChildren (react-dom.development.js:16990:1) at mountIndeterminateComponent (react-dom.development.js:17890:1) at beginWork (react-dom.development.js:19049:1) at HTMLUnknownElement.callCallback (react-dom.development.js:3945:1) at Object.invokeGuardedCallbackDev (react-dom.development.js:3994:1) at invokeGuardedCallback (react-dom.development.js:4056:1) at beginWork$1 (react-dom.development.js:23964:1) at performUnitOfWork (react-dom.development.js:22776:1) at workLoopSync (react-dom.development.js:22707:1) react-dom.development.js:20085 The above error occurred in the <ChangeAlert> component: at ChangeAlert (http://localhost:3000/curso-intro-react/static/js/bundle.js:540:5) at WrappedComponentWithStorageListener (http://localhost:3000/curso-intro-react/static/js/bundle.js:624:82) at App (http://localhost:3000/curso-intro-react/static/js/bundle.js:279:58) Consider adding an error boundary to your tree to customize error handling behavior. Visit https://reactjs.org/link/error-boundaries to learn more about error boundaries. logCapturedError @ react-dom.development.js:20085 bootstrap:27 Uncaught Error: ChangeAlert(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null. at reconcileChildFibers (react-dom.development.js:14169:1) at reconcileChildren (react-dom.development.js:16990:1) at mountIndeterminateComponent (react-dom.development.js:17890:1) at beginWork (react-dom.development.js:19049:1) at HTMLUnknownElement.callCallback (react-dom.development.js:3945:1) at Object.invokeGuardedCallbackDev (react-dom.development.js:3994:1) at invokeGuardedCallback (react-dom.development.js:4056:1) at beginWork$1 (react-dom.development.js:23964:1) at performUnitOfWork (react-dom.development.js:22776:1) at workLoopSync (react-dom.development.js:22707:1)
Y asi se ve mi change alert
import React from "react"; import { withStorageListener } from "./withStorageListener"; function ChangeAlert({ show, toggleShow }) { if (show) { return <p > Hubo cambios < /p>; } } const ChangeAlertWithStorageListener = withStorageListener(ChangeAlert); export { ChangeAlertWithStorageListener };
.
import React from "react"; function withStorageListener(WrappedComponent) { return function WrappedComponentWithStorageListener(props) { const [storageChange, setStorageChange] = React.useState(false); return ( < WrappedComponent show = { storageChange } toggleShow = { setStorageChange } /> ); }; } export { withStorageListener };

Brayan Ramirez Alzate
Esos los agrega visual studio de forma medio random, pero voy a intentar

Juan Castro
No estoy seguro si sea por esto, pero ¿podrías probar eliminando los espacios entre los componentes TodoCounter y TodoSearch? Esos que agregas con el
{" "}

Brayan Ramirez Alzate
<TodoHeader loading = { loading } > < TodoCounter totalTodos = { totalTodos } completedTodos = { completedTodos } />{" "} < TodoSearch searchValue = { searchValue } setSearchValue = { setSearchValue } />{" "} < / TodoHeader >
y en el componente esta así
import React from "react"; function TodoHeader({ children, loading }) { return ( < header > { React.Children.toArray(children).map(child => React.cloneElement(child, { loading })) } < / header > ); } export { TodoHeader };```

Juan Castro
El primer error nos indica que estás renderizando una lista, pero que los elementos de la lista no tienen la propiedad key. Todo esto en el componente TodoHeader. ¿Podrías mostrarnos por fa tu componente TodoHeader para ayudarte a encontrar el error?