Scala的模板中设置变量(Scala template set variable)

2019-08-03 08:24发布

我是新来的Scala(斯卡拉在播放2框架模板),我要做到以下几点:传递一个参数isEdit并根据此参数,定义了一个值,伪代码:

variable myTitle;

if(isEdit)
    myTitle="edit question";
else
    myTitle="create question";

如何玩2.0制定这Scala的模板? 传递isEdit是没有问题的,只有创造新的变量myTitle。 谢谢 :-)

Answer 1:

首先,看Playframework文档作为上有很多的模板上有良好的信息。 http://www.playframework.org/documentation/2.0.4/ScalaTemplates

现在,如果你需要重新使用整个模板中的值,那么你可以在你的模板的顶部(可能是任何@imports后)声明它:

@myTitle = @{ if(isEdit) "edit question" else "create question" }

如果你只需要在一个地方,那么你真的只需要在if-else块:

<h1>
  @if(isEdit) {
    edit question
  } else {
    create question
  }
</h1>


Answer 2:

你不能在一个视图模板使用变量以这种方式(如果我错了指正)。 我会使用JavaScript做你想做的事,即通过isEdit一些JavaScript函数,并从该设置标题。



Answer 3:

你可以试试这个,在类似的情况下,工作对我来说

@import java.lang.String; val myTitle = { if(isEdit) "edit question" else "create question" }

<h1>
    @myTitle
</h1>


Answer 4:

不那么确定你的要求,你可以这样做:

var myTitle = ""
if (isEdit)
    myTitle="edit question"
else
    myTitle="create question"

或这个:

val myTitle = if (isEdit) "edit question" else "create question"


文章来源: Scala template set variable