El uso del contexto de reacción con createContext tiene un valor predeterminado opcional y la mayoría de las explicaciones en la web son similares a las siguientes.
import { createContext } from 'react'; const Context = createContext('Default Value'); luego tenemos los componentes del Provider en el objeto de contexto que hace que los componentes secundarios sean capaces de escuchar el contexto usando los componentes del Consumer .
function Main() { const value = 'My Context Value'; return ( <Context.Provider value={value}> /* Why is it mandatory to provide value attribute when we have the default value argument in createContext method. */ <MyComponent /> </Context.Provider> ); }y luego usando Consumers podemos obtener los valores sin preocuparnos por usar la forma de accesorios de pasar datos en React js.
<Context.Consumer> {value => <span>{value}</span>} //context value in anonymous inner function </Context.Consumer> ¿Por qué necesitamos separar los valores para el contexto usando el método createContext y luego en el componente Provider? ¿No podemos usar el valor pasado al método createContext en sí mismo? Gracias por adelantado.