Skip to content
chestozo edited this page Nov 16, 2012 · 9 revisions

Checklist при ошибке компиляции шаблона:

  • фигурные скобки { и } в атрибуте должны быть указаны как {{ и }}: <a onclick="{{ id: 7 }}">click</a>;
  • нельзя переносить части html узла на новую строку: только так <a onclick="..." href="..." class="..." ... >;
  • если есть несколько шаблонов, на которые можно заматчится, - матч выполняется на последний, который подходит;
  • возможно, где-то используется html entity symbol типа &nbsp;. Просто так писать html entity нельзя, нужно их указывать внутри кавычек:
// Bad
<span>Hey,</span>&nbsp;<span class="user_name"></span>

// Good
<span>Hey,</span>
"&nbsp;"
<span class="user_name"></span>

Функции

  • для конкатинации строк лучше использовать синтаксис с подстановкой: "block__{element-name}". Использовать + -- нельзя, он арифметический;
  • функция html():

Функция html() -- это аналог disable-output-escaping -- я ее может совсем оторву. Чтобы никаких уж XSS'ов не возникало точно.

  • вместо func foo(scalar name) { html(name) } надо писать func foo(xml name) { name }

Типс и трикс

  • В yate все комментарии исключаются из результата наложения шаблона (//, /**/, <!-- -->). Если нужно всё-таки вывести html комментарий это можно сделать так:
html('<!-- noindex -->')
Clone this wiki locally