使用Julius或Lucius将脚本或样式添加到页面的<head>

Art*_*ina 6 haskell yesod

我有一个Yesod 0.9.3脚手架网站,其中包含一些针对每个页面都不同的小片段,例如从未确定数量的搜索结果生成的特定id属性的样式,我想将它们放在页面<style><script>标签中<head>,这样它们就不会污染我/static/tmp(而其余的lucius/julius模板放在生成的文件中,导致整个网站有十几个这样的文件).

addJulius并将addLucius其内容包含在一个常见的.js或.css文件中(至少对于Lucius),该文件是根据其内容生成的.

有没有办法这样做,比这更简单?

toWidgetHead [hamlet| <style> ##{someIdent} { some: style; } |]
Run Code Online (Sandbox Code Playgroud)

这最终会在生成的文件中,而不是在页面内的样式标记中:

toWidgetHead [lucius| ##{someIdent} { some: style; } |]
Run Code Online (Sandbox Code Playgroud)

mxc*_*mxc 1

函数 addStaticContent 可以控制这一点。如果您希望将资产嵌入到 html 文件中,只需将其设置为 Return Nothing 即可。

addStaticContent 黑线鳕