【问题标题】:Variable in partial different than in parent template部分变量与父模板不同
【发布时间】:2011-12-16 22:51:47
【问题描述】:

这是我在index.jade中的代码:

- each question in questions
    - console.log('Question in index.jade: ', question);
    !=partial('question', question)

这是我在question.jade中的代码:

- console.log('Question in question.jade: ', question);

由于某种原因,两个变量question不同的。我在做傻事吗?

【问题讨论】:

    标签: pug


    【解决方案1】:

    您需要将question 变量放在一个键为question 的对象中,并将其传递给偏函数的第二个参数。例如:

    - each question in questions
      !=partial('question', { question: question })
    

    然后局部视图将可以访问您想要的问题变量。此外,假设您正在使用带有 express 的jade,并且partial 是您的each 循环中唯一的内容,那么有一个简写方式:

    !=partial('question', {collection:questions})
    

    这将为questions 数组中的每个元素自动渲染一次部分。

    【讨论】:

    • !=partial('question', question); 不是 !=partial('question', { question: question }); 的简写吗?
    • 不,如果你只是传递question变量,jade不知道你想在partial的上下文中调用什么变量。
    • 注意:Jade 不再支持此方法。
    猜你喜欢
    • 1970-01-01
    • 2013-08-27
    • 2022-01-19
    • 2019-02-06
    • 2011-08-29
    • 2011-05-18
    • 1970-01-01
    • 1970-01-01
    • 2010-11-03
    相关资源
    最近更新 更多