我试图使用dust.js模板功能来渲染一些HTML。我制作了一个模型,可以呈现一个按钮,并将href和文本视为部分。
{>"modules/Button/Button.tl"/}
{<button_link}
some url
{/button_link}
{<button_text}
some text
{/button_text}
技巧是我希望这段代码重复3次,因为我有3个不同的按钮。问题在于,当渲染时,Dust用最终的href和按钮填充所有部分。因此,所有3个按钮看起来都完全一样,而且这不是我想要的。
任何人都可以帮助我吗?如何多次渲染相同的模块。
PS:我可以制作一个可以同时渲染所有3个按钮的模块。但是我想稍后重用该模块来在另一个页面中呈现一个按钮。我想躲避这种解决方法。
答案 0 :(得分:1)
您可以创建一个接受参数的部分(您正在调用的“模块”),然后您可以根据需要使用部分,使用不同的值:
{>"modules/Button/Button.tl" button_link="some/url" button_text="some text" /}
部分定义看起来像这样:
<a href=button_link class="button">{button_text}</a>
供参考:http://www.dustjs.com/guides/partials/和http://www.dustjs.com/docs/syntax/#partial