React Flashcards
Преимущества React (5)
1.Компонентный подход
2.Виртуальный DOM
3.Single page application
4.Большое комьюнити
5. JSX
Что такое prop drilling и как его избежать?
Это передача данных через несколько уровней вложенных компонентов, код становится сложным и трудно поддерживаемым.
Использовать стейтмэнеджеры или Context
Что такое Хуки?
Это готовые функции ,которые предоставляет нам React для работы с состояниями и не только
Что за контролируемый и не контролируемый компонент?
Привести пример с Input
Что такое состояние в React?
Это объект, который содержит данные компонента в React и ререндориться при их изменении
Можно ли изменить props в React?
Будет ошибка тк пропсы являются имутабельными
Как использовать componentWillUnmount в функциональный компонентах или как что-то сделать при демонтировании компонента?
useEffect с return
useEffect(() => { return() => { clean something } })
Чем отличается useState от useRef?
В документации вроде написано о том, что при изменении useState происходит rerender а при использовании useRef нет
На самом деле мало где будет использоваться если не писать кастомные хуки
Зачем нужен key в React?
Для идентификации элементов
Почему React это не фреймворк?
React - это библиотека, а не фреймворк, потому что она предоставляет набор инструментов для выполнения различных задач и создания пользовательских интерфейсов , но не навязывает жестких правил и структуры разработки.
Что такое stateLess и stateFull компоненты?
Контролируемые и неконтролируемые компоненты
Какие я использовал библиотеки для React? (5)
React motion
Nivo
MobX
Redux
Styled Components
Разница между useMemo и useCallback?
useCallback кэширует саму функцию.
Какие я использую хуки в React?(5)
1 useEffect
2 useMemo
3 useState
4 useContext
5 useRef
Когда происходит ререндер?
Когда изменяются props или state
Происходит ли ререндер если изменить что-то через useRef.current ?
Нет
Зачем нужен js для web?
JS позволяет сделать сайт функциональным и интерактивным, научить его реагировать на действия пользователя, а также на другие браузерные события.
Реактивность в React
это способность компонентов реагировать на изменения состояния.
Компонент высшего порядка это
Например React.memo
Что делает React.memo ?
Делает компонент мемоизированым , и он не будет перерендорится если пропсы не поменяются
Он проверяет пропсы просто через тройное = ,те не глубоко для obj
Как асинхронно подгружать Компоненты?
React.lazy(() => import(./myComponent))
Зачем нужен React.memo ?
Например у нас есть родительский компонента в котором происходит ререндер ,так вот если дочерний компонент не обернуть в React.memo ,то он тоже будет перерисовываться, а так только если изменятся пропсы или внутренний state
Как асинхронно подгружать Компоненты?
React.lazy(() => import(./myComponent))
Когда использовать useCallback?
Когда мы передаем какую-то функцию в дочерний компонент
Хорошая декомпозиция
Правильно разделять код на компоненты, которые будут перерисовываться