2

我正在创建一个新项目,我想为我的一些助手命名空间。这些助手是“template.html 文件”。我目前正在使用以下正常模式调用它们:

<sly data-sly-use.MyHelper='MyHelper.html' data-sly-call="${MyHelper.tmpl @ args..}"/>

我对 Sightly 的欣赏是我可以做这样的事情:


模板.html

<template data-sly-template.one>1</template>
<template data-sly-template.two>2</template>

main.html

<sly data-sly-use.tmpls="templates.html"/>

one: <sly data-sly-call=${tmpls.one}/>
two <sly data-sly-call=${tmpls.two}/>

我想设置的是:

library.html(包括更多模块化模板功能)

<sly data-sly-import="one.html"/>
<sly data-sly-import="two.html"/>

main.html (导入库)

<sly data-sly-use.libs="library.html"/>

one: <sly data-sly-call=${libs.one}/>
two <sly data-sly-call=${libs.two}/>

我尝试了后者的几种变体,看看是否已经支持 OTTB。也许我只是错误地连接它,但有谁知道这是否可能?

谢谢你,

布罗迪

4

1 回答 1

1

HTL 规范

当模板位于单独的文件中时,可以使用 data-sly-use 加载它们

您已经在您的工作示例data-sly-use中使用. 你只需要在你的.data-sly-callmain.htmldata-sly-templatetemplate.htmllibrary.html

main.html(导入库)

<sly data-sly-use.libs="library.html"/>

one: <sly data-sly-call=${libs.one}/>
two <sly data-sly-call=${libs.two}/>

library.html(包括更多模块化模板功能)

<template data-sly-template.one>
    <div data-sly-use.one="one.html" data-sly-call="${one.one}"></div>
</template>

<template data-sly-template.two">
    <div data-sly-use.two="two.html" data-sly-call="${two.two}"></div>
</template>

一个.html

<template data-sly-template.one>this is one</template>

二.html

<template data-sly-template.two>this is two</template>

这将允许您通过一个data-sly-use表达式导入所有帮助程序,同时按照您的要求将帮助程序模板保存在单独的文件中,即使中介library.html不像您可能想要的那样简洁。

于 2016-08-16T05:56:26.323 回答