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

带有超链接的页面

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

运行后查看结果

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值