Предложения по тегам ‹head› для Метеора

Уважаемые пользователи Метеора!

Во время моих поисков руководств и примеров приложений я нашел одно, которое использует уникальную структуру головы:

  <meta charset="utf-8">
  <title>Title</title>
  <meta name="description" content="Top10">
  <meta name="viewport" content="width=device-width" />
  <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1">

В этом конкретном примере приложения даже нигде не было тега <body>, только файл с именем head.html, который содержал приведенный выше код. Я также узнал, что кажется, что Meteor просто автоматически создает для вас тег body, поэтому технически просто head.html подойдет.

Итак, мне стало интересно, кто-нибудь определяет конкретные теги заголовка для приложений Meteor? В чем причина? Является ли приведенный выше код хорошей отправной точкой?


person ilrein    schedule 30.04.2015    source источник


Ответы (3)


Вы можете легко установить динамические заголовки, используя iron:router, например:

onAfterAction: function(){
  document.title = 'my awesome site: ' + Router.current().route.getName();
}

Я использую head.html, который включает в себя различные настройки SEO:

<head>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="fragment" content="!"/>
<meta name="description" content="your description"/>
<meta property="og:title" content="your site title"/>
<meta property="og:type" content="website"/>
<meta property="og:image" content="https://yourimageurl"/>
<meta property="og:url" content="https://hostname"/>
<meta property="og:description" content="your description"/>
<meta name="twitter:card" content="summary"/>
<meta name="twitter:url" content="https://hostname"/>
<meta name="twitter:title" content="your site title"/>
<meta name="twitter:description" content="your site description"/>
<meta name="twitter:image" content="https://yourimageurl">
<noscript>You must have Javascript enabled in order to use this site</noscript>
<link rel="shortcut icon" href="/your-ico" type="image/x-icon" />
</head>
person Michel Floyd    schedule 01.05.2015

Когда Meteor анализирует ваши различные html-файлы, любые файлы, содержащие тег <head></head> за пределами <template></template>, будут объединены в один тег <head></head> на каждой странице вашего приложения. Это хорошо для включения таких вещей, как заголовок, различные метатеги и сторонние ресурсы, которые вы хотите использовать на каждой странице. Однако поддержка руля для тегов заголовков по-прежнему не существует в Meteor, поэтому он определенно ограничен в том, что вы можете с ним делать (нет динамической метаинформации).

В конце концов, если вам нужна динамическая информация, вам придется прибегнуть к чему-то вроде jquery.

Вы можете найти больше обсуждений вокруг тега <head> здесь:

https://github.com/meteor/meteor/issues/266

person Curtis    schedule 30.04.2015

Изучив https://github.com/kadirahq/meteor-dochead, я нашел один способ динамически добавить данные в тег <head>

var meta = '<div>just an example</div>' document.getElementsByTagName('head')[0].insertAdjacentHTML('beforeend', meta);
Или просто добавьте этот пакет, если вам нужна дополнительная функциональность

person Shrihari Balasubramani    schedule 23.08.2016