Загрузка...
Загрузка...
Контекст (Context) в React — это способ передавать данные между компонентами на любом уровне вложенности, минуя передачу пропсов (props) вручную через каждый уровень дерева.
Контекст удобен, когда определённые данные (например, текущий пользователь, язык, тема) нужны во многих компонентах одновременно.
import { createContext } from "react";
const ThemeContext = createContext("light");
<ThemeContext.Provider value="dark">
<App />
</ThemeContext.Provider>
import { useContext } from "react";
function Header() {
const theme = useContext(ThemeContext);
return <h1 className={`header ${theme}`}>Привет!</h1>;
}
Теперь компонент Header знает, что тема — "dark", без пропсов!
const value = useContext(ContextObject);
Context.ProviderProvider меняетсяconst ThemeContext = createContext("light");
function ThemeSwitcher() {
const theme = useContext(ThemeContext);
return <button className={`btn-${theme}`}>Сменить тему</button>;
}
useContext позволяет легко получить доступ к значению контекста.Совет:
Используйте контекст для данных, которые нужны многим компонентам и редко меняются.