В Assemble конвенция должна использовать переднюю матрицу YAML как значение «this», а контекст для частичных имен должен быть заменен именами, используя имя частичного в качестве первого пути в контексте.
Так на странице, вы можете сделать, как вы заметили, но с частичным имени alert.hbs
, вы должны сделать что-то вроде {{alert.title}}
, или:
{{#alert}}
{{title}}
{{/alert}}
Мы знаем, что это может быть немного запутанным , а IMO немного разочаровывает, так как передний элемент YAML не работает одинаково в частичных страницах, но пока эта проблема с Handlebars не решена, мы должны жить с ограничениями этой библиотеки: https://github.com/wycats/handlebars.js/issues/392 (теперь собирает поддержку шаблонов Swig , но это не решает эту проблему для вас).
Последнее, что вы можете создать пользовательские помощники, чтобы обойти его. У библиотеки assemble-yaml есть методы для доступа к элементу управления YAML в шаблонах (проект yfm показывает некоторые альтернативы и примеры того, как вы можете использовать контекст из YFM в шаблонах), а их значение - grunt-init template для создания хелперов Handlebars.
Спасибо, это то, что мне нужно было знать! – toby1kenobi
У меня проблема simialr здесь http://stackoverflow.com/questions/25720831/assemble-io-context-of-yaml-data-in-partials-not-working – Adi