我的降价文件在浏览器中显示 html 标签
My markdown files are showing html tags in the browser
我正在使用 DocPad 静态站点生成器。
我在命令行上有 运行 docpad install marked
。
我的降价文件 about.html.md 包含以下内容:
我喜欢在沙滩上散步。 _另外我喜欢 DocPad!_
当我在浏览器中查看网站时,我看到了实际标签:
<p>I like long walks on the beach. <em>Plus I rock at DocPad!</em></p>
显然我想看到的是:
我喜欢在沙滩上散步。 而且我喜欢 DocPad!
我正在通过合并插件使用 Nunjucks 诱人引擎,如果这有什么不同...
根据 documentation,自动转义在 Nunjucks 模板引擎中作为安全预防措施默认打开(大多数模板引擎的典型)。如果您将 HTML 传递给模板并且您希望在不转义的情况下呈现 HTML,那么您需要告诉模板它是 "safe":
{{ foo | safe }}
或者,您可以全局关闭转义,但通常不推荐这样做。如果您无论如何都想这样做,docs 声明您可以 "pass the autoescape
option as false
to the Environment
object":
var env = nunjucks.configure('/path/to/templates', { autoescape: false });
我不熟悉 DocPad 的合并插件,但大概通过 { autoescape: false }
作为合并选项会完成同样的事情。
我正在使用 DocPad 静态站点生成器。
我在命令行上有 运行 docpad install marked
。
我的降价文件 about.html.md 包含以下内容:
我喜欢在沙滩上散步。 _另外我喜欢 DocPad!_
当我在浏览器中查看网站时,我看到了实际标签:
<p>I like long walks on the beach. <em>Plus I rock at DocPad!</em></p>
显然我想看到的是:
我喜欢在沙滩上散步。 而且我喜欢 DocPad!
我正在通过合并插件使用 Nunjucks 诱人引擎,如果这有什么不同...
根据 documentation,自动转义在 Nunjucks 模板引擎中作为安全预防措施默认打开(大多数模板引擎的典型)。如果您将 HTML 传递给模板并且您希望在不转义的情况下呈现 HTML,那么您需要告诉模板它是 "safe":
{{ foo | safe }}
或者,您可以全局关闭转义,但通常不推荐这样做。如果您无论如何都想这样做,docs 声明您可以 "pass the autoescape
option as false
to the Environment
object":
var env = nunjucks.configure('/path/to/templates', { autoescape: false });
我不熟悉 DocPad 的合并插件,但大概通过 { autoescape: false }
作为合并选项会完成同样的事情。