freeCodeCamp/guide/russian/react/life-cycle-methods-of-a-com.../index.md

77 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: Life Cycle Methods Of A Component
localeTitle: Методы жизненного цикла компонента
---
## Методы жизненного цикла компонента
Когда мы начинаем работать с компонентами, нам нужно выполнить несколько действий для обновления состояния или для выполнения некоторых действий, когда что-то изменится в этом компоненте. В этом случае методы жизненного цикла компонента пригодится! Поэтому давайте погрузиться в них в этой статье.
В широком смысле мы можем разделить методы жизненного цикла на **3** категории.
1. монтаж
2. обновление
3. Размонтирование
Поскольку методы жизненного цикла являются самоочевидными, я просто упомянул имена методов. Пожалуйста, не стесняйтесь внести свой вклад в эту статью, если это необходимо.
## Монтаж:
а. `constructor()`
б. `componentWillMount()`
с. `render()`
д. `componentDidMount()`
## Обновление:
а. `componentWillRecieveProps()`
б. `shouldComponentUpdate()`
с. `componentWillUpdate()`
д. `render()`
е. `componentDidUpdate()`
## размонтирование:
а. `componentWillUnmount()`
## Некоторые интересные факты, чтобы заметить:
* `constructor` , `componentWillMount` , `componentDidMount` и `componentWillUnmount` будут вызываться только один раз в течение жизненного цикла компонента.
* `componentWillUpdate` и `componentDidUpdate` будет выполняться только тогда и только тогда, когда `shouldComponentUpdate` возвращает true.
* `componentWillUnmount()` будет вызываться непосредственно перед размонтированием любого компонента и, следовательно, может использоваться для освобождения используемой памяти, закрытия любых подключений к БД и т. д.
Многие вещи можно узнать, погрузившись в кодирование. Так что заставляйте свои руки грязно кодировать.
Заметка:
> «Предупреждения об устаревании будут включены с будущим выпуском 16.x, **но устаревшие жизненные** циклы **будут продолжать работать до версии 17.** » 1
>
> «Даже в версии 17 все равно будет возможно использовать их, но они будут сглажены префиксом« UNSAFE\_ », чтобы указать, что они могут вызвать проблемы. Мы также подготовили [автоматический сценарий, чтобы переименовать их](https://github.com/reactjs/react-codemod#rename-unsafe-lifecycles) в существующий код». 1
Другими словами, эти методы жизненного цикла previouse будут по-прежнему доступны как:
* `UNSAFE_componentWillMount`
* `UNSAFE_componentWillReceiveProps`
* `UNSAFE_componentWillUpdate`
## Новые методы жизненного цикла
Новые методы жизненного цикла будут введены в Реакт 17
* `getDerivedStateFromProps` будет более безопасной альтернативой `componentWillReceiveProps` .
* `getSnapshotBeforeUpdate` будет добавлен для поддержки безопасного чтения свойств из обновлений DOM.
Многие вещи можно узнать, погрузившись в кодирование. Так что заставляйте свои руки грязно кодировать.
### источники
1. [Вон, Брайан. «React v16.3.0: новый жизненный цикл и контекстный API». 29 марта 2018 года. Доступ: 22 мая 2018 года.](https://reactjs.org/blog/2018/03/29/react-v-16-3.html)
### Ресурсы
[Обновление асинхронного рендеринга](https://reactjs.org/blog/2018/03/27/update-on-async-rendering.html)