我正在尝试根据 Dust.js 指南打印换行符,在模板中,我在每个记录输出的末尾都有一个 {~n}
{#friends} {name}, {age}{~n}{/friends}
我编译了上面的模板并使用几个 JSON 记录进行渲染以生成“输出”对象。我正在使用 document.getElementById('divID').innerHTML 在基本 DIV 标记中动态替换“out”对象。尽管有 {~n},但问题是无法打印换行符。我也试过 {~r},但还是不走运。有什么想法吗?
我正在尝试根据 Dust.js 指南打印换行符,在模板中,我在每个记录输出的末尾都有一个 {~n}
{#friends} {name}, {age}{~n}{/friends}
我编译了上面的模板并使用几个 JSON 记录进行渲染以生成“输出”对象。我正在使用 document.getElementById('divID').innerHTML 在基本 DIV 标记中动态替换“out”对象。尽管有 {~n},但问题是无法打印换行符。我也试过 {~r},但还是不走运。有什么想法吗?
默认情况下,HTML 会将相邻的空格(包括换行符)折叠成一个空格。对于大多数元素,默认情况下a word
和a \n word
(或a \r word
或)之间没有区别。解决方案是:a \r\n word
<br>
元素添加中断whitespace: pre;
或者,您可以使用列表(这对于您的用例可能更具语义,应该是首选)。
如果要呈现为 HTML,则需要使用<br>
标签而不是换行符。
你应该使用:
dust.optimizers.format = function(ctx, node) { return node };
看看 https://github.com/linkedin/dustjs/wiki/Dust-Tutorial#controlling-whitespace-suppression