Функция многократного использования шаблона Play 2.0 с телом HTML - PullRequest
4 голосов
/ 15 марта 2012

Я пытаюсь осмыслить эту концепцию, но сила функционального программирования все еще слаба во мне, поэтому я не могу сразу с ней разобраться. То, что я хотел бы сделать, это определить повторно используемую шаблонную функцию с некоторыми параметрами, но также Html body .

Например, рассмотрим следующую многоразовую функцию в шаблоне:

@myFunction(label: String, labelTarget: String, content: Html) = {
    <label for="@labelTarget">@label</label>
    <div>@content</div>
}

Затем я хотел бы использовать эту функцию следующим образом:

...

<h2>My function content below!</h2>
@myFunction("label", "target") {
    <span>My additional content used by the function</span>
}

...

У меня такое чувство, что это должно быть выполнимо, но, похоже, не могу понять это. Любая помощь?

1 Ответ

5 голосов
/ 15 марта 2012

Единственная ошибка, которую вы допустили, это то, что вы не определили свой контент как новый блок параметров:

@myFunction(label: String, labelTarget: String)(content: Html) = {
    <label for="@labelTarget">@label</label>
    <div>@content</div>
}
...