0

例如,假设我有一个 mixin 来创建博客文章:

mixin blogPost(title, content)
    article
        h1= title
        p= content

像这样使用:

+blogPost("Post Title","Post Content")

结果是:

<article>
    <h1>Post Title</h1>
    <p>Post Content</p>
</article>

哪个效果很好,但是假设我不知道帖子的“帖子内容”部分中有多少段落,我只知道会有一个或多个。因此,例如,帖子的内容可能是:

**Title**
My awesome blog post

**Post Content** 
This is my awesome blog post.

This is a new paragraph about my awesome blog post.

这样的事情会奏效吗?

mixin blogPost(title, content)
article
    h1= title
    - for each paragraph in content
        p= content

像这样调用:

+blogPost("Post Title", {"This is my awesome blog post.","This is a new paragraph about my awesome blog post."})

这行得通吗?有没有更好的办法?

4

1 回答 1

2

是的,它会起作用,但是您的混合逻辑不太正确,您需要将内容段落作为字符串数组而不是您在示例中的对象传递。

混合更改

  • 删除for关键字
  • set p= paragraph,而不是content数组

通过这些更改,您的 mixin 应该看起来像这样

mixin blogPost(title, content)
article
    h1= title
    - each paragraph in content
        p= paragraph

然后只记得用一个字符串数组调用 mixin

+blogPost("Post Title", ["This is my awesome blog post.","This is a new paragraph about my awesome blog post."])
于 2014-01-23T18:24:03.367 回答