如何在play框架中的scala模板中声明和访问局部变量?

rjc*_*rjc 8 scala playframework

我在scala模板中有代码,如:

@for(col <- List.range(0,12)) {
    <td>
        @if(col % 2 == 0) {
            @{ val letter = someMap(col) }
            <div class="z@(letter)@(letter)s"></div>
        }
    </td>
}
Run Code Online (Sandbox Code Playgroud)

但我得到编译错误:找不到值字母.如何声明变量并能够在上面的标记中稍后访问?

Dan*_*osa 7

其实我从未见过@if,也没试过PlayFramework.但如果我认为是这样,那么当你真正试图要求写信时,它似乎已经超出了范围.如果您按如下方式重新排列括号会发生什么?

@for(col <- List.range(0,12)) {
  <td>
    @if(col % 2 == 0) {
      @{val letter = someMap(col)
        <div class="z@(letter)@(letter)s"></div>
      }
    }
  </td>
}
Run Code Online (Sandbox Code Playgroud)