【问题标题】:leave undefined nunjucks variables unrepalced保留未定义的 nunjucks 变量未替换
【发布时间】:2017-02-09 18:22:41
【问题描述】:

这很好用:

nunjucks.renderString('Hello {{ username }}', { username: 'James' });

然后给我'Hello James'。如果我遗漏了username,如下所示:

nunjucks.renderString('Hello {{ username }}', { noUsername: 'James' });

nunjucks 给我'Hello '。我试图定义的行为是一种允许我不替换未定义变量的方法,以便

nunjucks.renderString('Hello {{ username }}', { noUsername: 'James' });

给我'Hello {{ username }}'。有没有办法使用自定义过滤器、宏、模板等更智能的东西来实现这一点?我想避免滚动我自己的语法(自定义转义字符),并尽可能使其更惯用。我用renderString 做一个简单的例子,但我想将它用于整个模板(通过render)。

【问题讨论】:

    标签: templating nunjucks


    【解决方案1】:

    原来{% raw %}a fantastic tag 已经内置在 nunjucks 中,可用于处理您知道您的变量将提前未定义的情况。例如,当这样使用时:

    nunjucks.renderString('Hello {{ username }} {% raw %}{{ iDoNotExist }}{% endraw %}',
        { username: 'James' });
    

    它给出以下输出:

    'Hello James {{ iDoNotExist }}'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-20
      • 1970-01-01
      • 1970-01-01
      • 2011-06-11
      • 1970-01-01
      相关资源
      最近更新 更多