【问题标题】:How can I pass a list of html element as parameter into a Closure template如何将 html 元素列表作为参数传递给 Closure 模板
【发布时间】:2018-01-26 13:51:18
【问题描述】:

我的模板是下面这个,我想用一个html列表作为参数

{template .myTemplate}
    {@param title: string}
    {@param? listHtml: list<html>}
     <ul>
     {foreach $item in $listHtml}
       <li>
         <a>{$item}</a>
       </li>
     {/foreach}
    </ul>
{/template}

我的问题是我在调用模板时不知道如何将 html 元素列表作为参数传递。

{call desktop.common.myTemplate }
     {param title: 'Contact us' /}
     {param listHtml kind="html" }
                          ????  
     {/param}
{/call}

【问题讨论】:

    标签: javascript html google-closure-templates


    【解决方案1】:

    如何分解一个帮助模板:

    {template .myTemplate}
      {@param title: string}
      {@param? items: html}
      <ul>
        {$items}
      </ul>
    {/template}
    
    {template .myItemTemplate}
      {@param content: html}
      <li>
        <a>{$content}</a>
      </li>
    {/template}
    

    将迭代推送给调用者,我假设项目列表是静态的:

    {call desktop.common.myTemplate }
      {param title: 'Contact us' /}
      {param items kind="html"}
        {call desktop.common.myItemTemplate}
          {param content kind="html"}foo{/param}
        {/call}
        {call desktop.common.myItemTemplate}
          {param content kind="html"}bar{/param}
        {/call}
      {/param}
    {/call}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-14
      • 2021-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-17
      相关资源
      最近更新 更多