Strict Mode — инструмент React для поиска проблем в приложении 🔍 Он не рендерит ничего видимого, но помогает писать лучший код!
// Включить строгий режим:
<React.StrictMode>
<App />
</React.StrictMode>Strict Mode в React — как детектив в магазине: ищет проблемы до того, как они станут большими! 🕵️♂️
Strict Mode проверяет ваше приложение на потенциальные проблемы:
// Оберните приложение в StrictMode
<React.StrictMode>
<App />
</React.StrictMode>Важно: работает только в разработке, в продакшене отключается автоматически!
// ❌ Предупреждение о findDOMNode
class MyComponent extends Component {
componentDidMount() {
// findDOMNode устарел!
findDOMNode(this).focus();
}
}// ❌ Предупреждение о componentWillMount
class MyComponent extends Component {
componentWillMount() {
// Этот метод устарел!
}
}// ❌ Плохо — изменение состояния при рендере
function BadComponent() {
localStorage.setItem('rendered', 'true'); // Побочный эффект!
return <div>Компонент</div>;
}// Strict Mode запускает эффекты дважды
// Помогает найти ошибки очистки!
useEffect(() => {
const subscription = subscribeToData();
// ❌ Забыли функцию очистки
// Strict Mode покажет проблему!
// ✅ Правильно — с функцией очистки
return () => {
subscription.unsubscribe();
};
}, []);// Strict Mode помогает подготовиться к Concurrent Mode
// И другим новым возможностям React// ✅ Хорошо — включить с самого начала
<React.StrictMode>
<App />
</React.StrictMode>// Если компонент вызывает проблемы
<React.StrictMode>
<App>
<LegacyComponent /> {/* Может вызывать предупреждения */}
</App>
</React.StrictMode>// ❌ Ошибка — игнорировать Strict Mode предупреждения
// "Это всего лишь предупреждения, можно не исправлять"
// ✅ Правильно — исправлять все предупреждения
// Помогают избежать проблем в будущем// ❌ Ошибка — думать, что Strict Mode нужен в продакшене
// Он автоматически отключается в продакшене!
// ✅ Правильно — использовать только в разработкеStrict Mode — как тренер, который указывает на ошибки до того, как вы проиграете матч! 💪
Хотите больше статей для подготовки к собеседованиям? Подписывайтесь на EasyAdvice, добавляйте сайт в закладки и совершенствуйтесь каждый день 💪