Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 在快照中使用路由和html(Heist)_Haskell_Haskell Snap Framework_Heist - Fatal编程技术网

Haskell 在快照中使用路由和html(Heist)

Haskell 在快照中使用路由和html(Heist),haskell,haskell-snap-framework,heist,Haskell,Haskell Snap Framework,Heist,我在我的snap app/Snaplet/heist/templates中有模板(*.tpl)(main.tpl,page1.tpl,page2.tpl,page3.tpl)。 这是我的Main.hs: import Snap.Http.Server import Snap.Core import Snap.Snaplet import Snap.Snaplet.Heist import Snap.Util.FileServe import Snap.Util.GZip import Heist

我在
我的snap app/Snaplet/heist/templates
中有模板(
*.tpl
)(
main.tpl
page1.tpl
page2.tpl
page3.tpl
)。 这是我的
Main.hs

import Snap.Http.Server
import Snap.Core
import Snap.Snaplet
import Snap.Snaplet.Heist
import Snap.Util.FileServe
import Snap.Util.GZip
import Heist.Interpreted
import Heist

--.......

data App = App { _heist :: Snaplet (Heist App) }
makeLenses ''App

instance HasHeist App where 
  heistLens = subSnaplet heist
我怎样才能:

a) 是否在我的web应用程序中提供所有模板?也就是说,我希望能够访问上的
page1.tpl
page2.tpl
page3.tpl
localhost://page1
localhost://page2
localhost://page3
。我是否必须为每个页面添加一条路径,或者我是否可以添加一条路径,以便一次访问所有页面


2)
main.tpl
是一个主模板(布局)。如何使
page[123]
使用
main.tpl
作为主布局模板?

Heist snaplet的功能非常类似。这将为templates/at routes中的所有模板提供服务。Haddock有更多的细节,例如隐藏某些模板,这些模板本身没有意义

要将不同的模板组合在一起,请考虑类似函数的模板-您可以将它们应用于其他模板,其结果本身就是一个模板。这些事情都发生在抢劫本身,而不是瞬间

。我想知道函数应用程序类比是否有助于记住更多的heistapi

<apply>
  <h1>I'm a function parameter</h1>
</apply>
<html><head></head>
  <body>
    <h1>Main template.</h1>
    <apply-content/>
  </body>
</html>