首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET Framework >

Play framework 2.0 -模板发动机

2012-08-01 
Play framework 2.0 -模板引擎#模板引擎?1.基于Scala的类型安全的模板引擎?Play2.0的有个新的基于Scala的

Play framework 2.0 -模板引擎

#模板引擎

?

1.基于Scala的类型安全的模板引擎

?

Play2.0的有个新的基于Scala的十分强大的模板引擎,它的设计灵感来自于ASP.NET的Razor。

具体来说:

a.紧凑、表现力、流畅:它最大限度的减少了一个文件中所需字符和按键的数量,使得可以快速流畅的编码。

不像大多数模板语法,你不需要打断你的编码,在HTML中来显示的表明服务代码块。

解析器能聪明的推断出它们。这使得代码紧凑,语法干净流畅,编码快速、有趣。

b.容易学习:它可以用最少的概念让你迅速成为生产力。您可以使用简单的Scala的结构和所有现有的HTML技能。

c.不是一种新的语言:我们有意识地选择了不创造一门新的语言。相反,我们想使Scala开发人员可以使用他们现有的Scala语言技能,

并提供一个模板标记的语法,使HTML构建工作流程。

d.任何文本编辑器中编辑:它不需要特定的工具,使您能够使用任何普通的文本编辑器都很有工作效率。

?

注意:尽快模板引擎使用Scala作为表现语言,但这对于Java开发者并不是问题。你尽可以把Scala当Java来使用。

记住,模板中不是写复杂逻辑的地方,不应该在模版里写复杂的Scala代码。

使用后缀语法定义参数类型。泛型类型定义使用[]符号,而不是通常Java语法中的<> 。例如,你写的List[String],与Java中的List<String>是相同的。

?

2.概述

?

Play的Scala模板是个包含了小块Scala代码的简单文本文件。模板可以生成任意的文本格式,如HTML,XML或CSV。

模板系统是为了HTML开发者能舒服的工作,允许前后端开发这容易使用模板而设计的。

模板根据一个简单的命名规约被编译为标准的Scala函数。如果你创建了一个views/Application/index.scala.html的模板文件,

那么它会生成一个包含一个render()方法的类-views.html.Application.index。

下面是一个简单的模板:

@(customer: Customer, orders: List[Order])

?

注意:在模版中以这样的方式申明代码块有时候很有用,但是记着,模板不是写复杂逻辑的最佳地方。

把它写在Java类中通常更好。

?

?

8.声明可复用值

?

可以用defining帮助定义作用域值:

?

?

9.导入语句

?

可以在模板或字模板的开头导入任意东西:

?

<h1>Home</h1> <div id="side">  @common.sideBar()</div>
?

热点排行