Используя componentWillUnmount в контексте следующих js

Я пытаюсь запустить метод на componentWillUnmount (я использую следующий js-фреймворк). Проблема в том, что метод componentWillUnmount не срабатывает. Однако componentDidMount работает нормально.

 class TeamMember extends Component {
          constructor(props)
          {
            super(props);
            this.state = {
              teamMember: this.props.teamMember,
              startDate: null,

            }
          }
       static async getInitialProps ( context ) {

            const { slug } = context.query;
            const res = await fetch(``);
            const teamMember = await res.json();
            return {
              teamMember:teamMember
            }

          }
        async componentDidMount()
        {
        this.setState({
          startDate: Date.now()
        })
        Tracker.pushObjectToStorage('profilesViewed',{
          title:this.state.teamMember[0].title.rendered,
          id:this.state.teamMember[0].id
        })
      }
      async componentWillUnmount(props)
      {
        alert("ddffff");
        console.info("ddsds");
      }
    }

это мой код для страницы. когда вы покидаете страницу, я хочу, чтобы сработал componentWillUnmount. Я поставил предупреждение для тестовых целей.

В вопросе отсутствует stackoverflow.com/help/mcve.

Estus Flask 31.07.2018 16:30
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
1
1 607
1

Ответы 1

Это ожидаемое и предполагаемое поведение маршрутизации Nextjs. Для получения дополнительной информации вы можете проверить эту проблему: https://github.com/zeit/next.js/issues/2819.

Когда вы переходите на другую страницу, размонтирование компонентов не происходит, а вместо этого отображается целая новая страница.

Это такое же поведение, как если бы вы обновляли (или приземлялись в первый раз) на странице. Компонент React не будет unmount, когда вы нажмете F5 на странице, потому что он не размонтируется, страница просто обновляется.

Другие вопросы по теме