我是Ruby on Rails的新手,内置的功能给我留下了深刻的印象。在某些时候,在查看我的Rails应用程序生成的HTML时,我发现某些缩进并不完美。看到Ruby在视觉上很吸引人,我为什么不期望它创建的标记是什么?
所以,我有以下内容:
<%= javascript_include_tag :defaults %>
生成以下内容:
<script src="/javascripts/prototype.js?1295468839" type="text/javascript"></script>
<script src="/javascripts/effects.js?1295468839" type="text/javascript"></script>
<script src="/javascripts/dragdrop.js?1295468839" type="text/javascript"></script>
<script src="/javascripts/controls.js?1295468839" type="text/javascript"></script>
<script src="/javascripts/rails.js?1295468839" type="text/javascript"></script>
<script src="/javascripts/application.js?1295468839" type="text/javascript"></script>
注意第一行有两个空格的适当缩进,而后面的每一行都放在最开头。
我知道我有点挑剔但是2011年。我们的标记应该和我们的用户界面一样漂亮。
有没有办法在使用AssetTagHelper时设置新行“分隔符”或以其他方式告诉rails缩进?
答案 0 :(得分:1)
javascript_include_tag无法执行此操作。它只是用换行符加入所有来源。
您可以使用以下内容手动发出每个脚本标记:
<%= javascript_include_tag "prototype" %>
<%= javascript_include_tag "effects" %>
<%= javascript_include_tag "dragdrop" %>
<%= javascript_include_tag "controls" %>
<%= javascript_include_tag "rails" %>
<%= javascript_include_tag "application" %>
另一个选择(以及一个更好的IMO)是使用像Jammit这样的资产包装程序 - http://documentcloud.github.com/jammit/来将JS连接并缩小为单个文件。