Изменить заголовок страницы в NodeJS - PullRequest
1 голос
/ 20 мая 2019

Как я могу изменить заголовок для каждой страницы, используя NodeJS?

index.html (не .js файл), который находится в общей папке:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8" />
    <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico" />
  <meta
     name="viewport"
    content="width=device-width, initial-scale=1, shrink-to-fit=no"
   />
   <meta name="theme-color" content="#000000" />

  <link rel="manifest" href="%PUBLIC_URL%/manifest.json" />

  <title>Default Titlte for all pages</title>
</head>
<body>
   <noscript>You need to enable JavaScript to run this app.</noscript>
   <div id="root"></div>

 </body>
</html>

Как я могу динамически менять заголовок при переходе на любую страницу?

Ответы [ 2 ]

1 голос
/ 20 мая 2019

Это не что иное, как изменение заголовка страницы в javascript по умолчанию, например document.title = 'title';, но это зависит от вашей среды.

Самому NodeJS не хватает возможности разбирать и преобразовывать HTML.

В экспрессе это будет выглядеть так (подход на основе маршрута):

router.get('/', function(req, res, next) {
    res.render('index', { title: 'title' });
}); 
0 голосов
/ 20 мая 2019

Попробуй это, приятель:

    app.get('/simple',(req, res) => {
    res.render('simple.hbs',{title='mytitle'});
}

/simple - это маршрут , который сделает ваши ' простые ' (HTML, EJS, Handlebars и т. Д. В зависимости от того, что вы используете) и добавьте новое название в качестве дополнительной опции.
В этом примере это будет mytitle :)

Обновление: Пример использования строго HTML app.get('/', function (req, res) { /*** 'template.html' - the filename of the template {} - the context - fill this with all the variables you want to use in your template ***/ res.render('template.html', {title: 'My New Title'}); });

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...