REACTJS как загрузить страницу по истечении тайм-аута?

#javascript #reactjs

#javascript #reactjs

Вопрос:

Я новичок в REACTJS и пытаюсь создать веб-страницу для практики. Я не могу понять, как загрузить новую страницу по истечении времени ожидания.

В основном, что я пытаюсь сделать, это заставить главную страницу загружаться, а затем запустить таймер примерно на 5 секунд, и по истечении этих 5 секунд я хотел бы загрузить следующую страницу.

Спасибо 🙂

Ответ №1:

Все зависит от ваших текущих настроек.

Прежде всего, у вас будет setTimeout в вашем компоненте любой ценой, структура такая :

 setTimeout(() => {
  // Do some stuff here
}, secondsBeforeExecution)
  

Затем внутри этой функции вы могли бы использовать window href для перенаправления на другую страницу, подобную этой :

 document.location.href = newUrl;
  

Вы также могли бы использовать react-router который можно использовать для создания разных страниц в вашем приложении React и простого переключения на другую страницу.
Я бы попробовал это сделать: https://reactrouter.com/web/guides/quick-start

После настройки вы могли бы сделать что-то вроде этого :

 const history = useHistory()

setTimeout(() => {
  history.push('/my/new/page')
}, 5000)