【问题标题】:Can I template a group of common attributes with Pug?我可以用 Pug 模板化一组通用属性吗?
【发布时间】:2019-02-21 13:54:01
【问题描述】:

我正在为 HTML 电子邮件设置模板,我的许多表格如下所示:

table( align='center', border='0', cellpadding='0', cellspacing='0', width='100%' )

为了节省时间和提高可读性,我想如果我能写一些更像这样的东西会更好:

- var tableAttrs = "align='center', border='0', cellpadding='0', cellspacing='0', width='100%'"
table( tableAttrs )

以上输出tableAttrs="tableAttrs",或#{="#{" tableAttrs="tableAttrs" }="}"(如果插值)。

我也尝试了一个简单的 mixin,没想到它会支持嵌套,并没有让我失望:

mixin table()
  table( align='center', border='0', cellpadding='0', cellspacing='0', width='100%' )

+table()
  tbody...

我的目标是否可行,我很想知道!

【问题讨论】:

    标签: pug


    【解决方案1】:

    如果您包含 block 语句,Mixin 确实支持嵌套。

    混音:

    mixin table()
      table(align='center', border='0', cellpadding='0', cellspacing='0', width='100%')
        if block
          block
    

    用法:

    +table()
      tr
        td text
    

    结果:

    <table align="center" border="0" cellpadding="0" width="100%">
      <tr>
        <td>text</td>
      </tr>
    </table>
    

    【讨论】:

    • 正好,谢谢!我在文档中错过了这个吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-03
    相关资源
    最近更新 更多