您的位置:首页 > 运维架构 > 网站架构

Haskell之Yesod开发–简单网站开发

2015-06-15 16:31 561 查看

带有超链接的页面

来到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


运行后查看结果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: