【问题标题】:Line break in Jade/Express within a conditional条件内 Jade/Express 中的换行符
【发布时间】:2012-08-05 16:40:50
【问题描述】:

我需要在翡翠布局中输出纯文本(使用快递),我需要它像这样出现在单独的行上 -

Hello
There
World"0"
World"1"
World"2"

我原以为我可以这样做-(玉模板来了)

|Hello
|There
- for (var i=0; i<3; i++)
  |World"#{i}"

但这反而给了我

Hello
ThereWorld"0"World"1"World"2"

对于我的生活,我无法理解如何在条件循环中进行换行!这并不意味着 HTML 文本,它是用于 CSV 二进制输出的纯文本,因此中断很重要,双引号以及防止标记的转义也很重要。

在 Jade 中不能做到这一点吗?我在 Jade 方面没有太多经验,所以我非常感谢那里的专家提供的任何帮助。谢谢!

【问题讨论】:

    标签: csv express pug


    【解决方案1】:

    试试这个:

    - for(var i = 0; i < 3; i++)
        = World + "\n"
    

    【讨论】:

    • 谢谢,这是一个很好的进步!但是这个解决方案有一些问题(1)我需要动态值,我不能再在“”中做#{},一切都被转义了(2)因为它的CSV,我需要用双引号括起我的值,这只是成为“现在如果这可以解决,我们将是黄金!抱歉,我应该更清楚我最初的问题,但我试图以一个简单的例子为目标。
    • 使用!{},它不再被转义
    • !{} 似乎不起作用,根据 Jade 文档,它的意思是输出未转义的字符串 - github.com/visionmedia/jade#a6-3
    • 我更新了我的答案。我现在在工作,所以我无法测试它是否有效。但理论上应该:)
    • 出于好奇尝试了这个,不幸的是似乎不起作用。但绝对感谢您在正确方向上的帮助!
    【解决方案2】:

    我已经更新了 OP 以包含动态变量和双引号,这是我真正需要的东西。

    玩弄了@Amberlamps 的建议并想出了这个答案 -

    |Hello
    |There
    - for (var i=0; i<3; i++)
      ="\n"
      |World"#{i}"
    

    我确信这个解决方案还有其他变体,但这个对我有用。

    如果我需要做更高级的模板,我肯定会检查 Mustache 或 Handlebars - Jade 及其文档对我来说不适合。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-24
      • 2011-07-22
      • 1970-01-01
      • 2012-11-24
      相关资源
      最近更新 更多