每当我在scala模板中有一个输出多行的表达式时,它会使生成的文档有点乱,因为它没有正确缩进。
有没有办法解决这个问题?什么是最佳做法?
答案 0 :(得分:1)
你可以做的第一件事就是在模板的Scala部分(即循环)中打一点点,如果它让你讨厌,无论如何这很可能会浪费时间。实际上,HTML的“丑陋”格式对页面的工作没有任何副作用,因为如果正确地,那么每个浏览器都能很好地处理代码。
如果您仍然没有被定罪,您可以使用一些外部库,例如HtmlCompressor(最适合最小化付费计划的转帐率),例如:
public Result compressor(){
String html = ugly.render("hi there").toString();
HtmlCompressor compressor = new HtmlCompressor();
return ok(compressor.compress(html)).as("text/html; charset=utf-8");
}
或Jsoup(顺便说一下:它不仅仅是代码清理)
public Result jsoup(){
String html = ugly.render("hi there").toString();
Document doc = Jsoup.parse(html);
return ok(doc.outerHtml()).as("text/html; charset=utf-8");
}
当然有原始样本,为了更轻松的工作,你可以覆盖
。在你的控制器内进行ok(...)
动作
您还需要支付一些性能价格,因此请考虑在可能的情况下使用缓存。
为Play 2.4 / Java
提供的样本