Как добавить функцию тайм-аута в метод ответа после загрузки корневого файла в express js

#javascript #node.js #express

Вопрос:

Я хочу использовать функцию setTimeout для перенаправления после отображения корневого файла в примере express js:

 app.get('/', (req,res)=>{
    res.render('index');
    setTimeout(()=>{
     res.render('homepage');
   },3000)
  }
 

но, похоже, это не работает

Ответ №1:

Вы можете отобразить только один файл. Если вы хотите перенаправить после его отображения, в вашем индексном файле должен быть какой-то javascript, например:

 <script>

setTimeout(() => {
  location.pathname = '/homepage';
}, 3000);

</script>
 

Комментарии:

1. да, это работает, и извините, я забыл упомянуть, что файл является файлом ejs, он перенаправляется нормально, но содержимое не отображается.

2. Вам нужно было бы выразить свое app.get('/homepage', ... мнение, чтобы выполнить res.render('homepage')

3. Я не уверен, что понимаю тебя

4. У вас есть app.get('/') для res.render('index') . Вам нужен еще один для домашней страницы. В противном случае он не знает, что вы хотите делать, когда вы перейдете /homepage (он вернет 404).

5. Потрясающе, это работает, спасибо