在HAML中包含javascript或CSS时,通常必须执行以下操作才能包含CSS:
%link{:type => "text/css", :rel => "stylesheet", :href => "/css/mycss.css"}
对于javascript:
%script{:type => "text/javascript", :src => "/js/myscript.js"}
我想知道HAML是否没有简短的方法来包含这些标记(从当然来源获取内容,而不是内联),而忽略了type
和rel
属性的需要,因为无论如何这些都是不变的。
请注意,Ruby on Rails通过函数提供此功能,但我没有使用rails。
答案 0 :(得分:24)
您不需要脚本的type
属性,您可以使用html语法
%script(src="/js/myscript.js")
如果您愿意,可以随时创建一个“助手”来生成它
答案 1 :(得分:1)
我认为Ven所说的可能就像......
# For CSS files...
def styletag(:sheet_name)
"<link rel='stylesheet' href='/styles/#{:sheet_name}.css'>"
end
# For js files...
def jstag(:script_name)
"<script src='/js/#{:script_name}.js'></script>"
end
然后,在您的模板中,您可以使用以下内容:
- styletag "mystyles"
- jstag "myscript"