如何在蒸气叶子中分配变量?

问题描述 投票:0回答:1

我有一个寺庙,使用一个表示所有数据的结构来渲染表格。

模板看起来像这样。

<div class="card shadow mb-4">
<div class="card-header py-3">
  <h6 class="m-0 font-weight-bold text-primary">DataTables Example</h6>
</div>
<div class="card-body">
  <div class="table-responsive">
    <table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
      <thead>
        <tr>
          #for(colums in page.table.columns) {
              <th>#(colums)</th>
          }
        </tr>
      </thead>
      <tfoot>
        <tr>
          #for(colums in page.table.columns) {
              <th>#(colums)</th>
          }
        </tr>
      </tfoot>
      <tbody>
          #for(row in page.table.rows) {
            <tr>
            #for(data in row.datas) {
               <td>#(data)</td>
            }
            </tr>>
          }
      </tbody>
    </table>
  </div>
</div>
</div>

在这种情况下,这可行。但是,让我们说在另一页中,我有不同的数据结构。所以不是page.table,而是page.grid.table我怎么仍可以使用此模板?

虽然我最初是要更改模板,但是使用table.columns代替page.table.columns,然后在嵌入模板之前“分配”表变量。这样,您也可以根据需要创建多个表,并在嵌入前重新分配table

我对网络开发不是很有经验,所以也许我只是在想这个错误。

swift vapor leaf
1个回答
0
投票
如果使用条件检查变量是否存在,这很简单。

#if (page.table != nil) { #for(row in page.table.rows) { <tr> #for(data in row.datas) { <td>#(data)</td> } </tr>> } }else { #for(row in page.grid.table.rows) { <tr> #for(data in row.datas) { <td>#(data)</td> } </tr>> } }

这仅是一个示例,您可以使代码多一点,但是基数相同,请检查变量是否存在,然后使用它。
© www.soinside.com 2019 - 2024. All rights reserved.