带有超链接的页面
来到Book(以下简称Develop…名称为Book)的37页,复制上半部分的代码并运行。
这里需要注意的时,空格不能乱空。
[whamlet|<a href=@{....
中的 |< 是可以加空格的
href和=之间是不可以加空格的
如此成功运行后,我们就可以在浏览器中点击链接进行跳转了。
非HTML的页面输出内容
接下来翻到P39页。这里讲解了如何对一个页面进行一个原始文本的输出而不使用HTML格式。
Hamlet语法
普通html
<body>
<p>Some paragraph.</p>
<ul>
<li>Item1</li>
<li>Item2</li>
</ul>
</body>
可以使用来表示
<body>
<p>Some paragraph
<ul>
<li>Item1
<li>Item2
带有自封闭的代码可以用如下方式
<p>Paragraph. <i>italic</i> end.</p>
<p>
Paragraph #
<i>italic
\ end.
标签的属性用#来表示
<p #firstid>paragraph <i #secondid>italic end.
<p id="firstid">paragraph <i #secondif>italic</i> end.</p>
参数变量使用#{…}
<head>
<title>#{title}
shamlet模版的使用
复制P55-P56页的代码。
这里你可能会遇到如下两个问题
1.直接复制代码后,import报错。你需要向.cabal文件中的Library项增加库(和java项目导入jar差不多)
* shakespeare
* blaze-html
2.如果你是增加了一个新文件并且是在Eclipse的环境中,你会发现一个奇怪的提示”Module not part of module graph”.
* 这是你仅仅需要增加如下代码在{-##-}之下import之上(不要问我是怎么折腾出来的!)
module XXX where
然后你就可以右键运行,来查看正确的显示结果。
hamlet模版中的safeUrl的使用
复制P56页中间的代码,并运行
有了上一步的经验,切记不要忘记增加
module XXX where
运行后查看结果