Meteor 流星:如何渲染断线?
我有以下变量:“你好↵↵世界”。(该值来自文本区域) 问题是,当我要求Meteor用{{content}显示它时,所有内容都显示在同一行上,并且没有考虑换行符Meteor 流星:如何渲染断线?,meteor,Meteor,我有以下变量:“你好↵↵世界”。(该值来自文本区域) 问题是,当我要求Meteor用{{content}显示它时,所有内容都显示在同一行上,并且没有考虑换行符 {{content}} # renders hello world # should render hello world 一种方法是创建把手辅助对象: Handlebars.registerHelper 'breaklines', (text) -> text = text.replace /(\r\n|\n|\r)
{{content}}
# renders
hello world
# should render
hello
world
一种方法是创建把手辅助对象:
Handlebars.registerHelper 'breaklines', (text) ->
text = text.replace /(\r\n|\n|\r)/gm, '<br>'
return text
一种方法是创建把手辅助对象:
Handlebars.registerHelper 'breaklines', (text) ->
text = text.replace /(\r\n|\n|\r)/gm, '<br>'
return text
包裹
任何
数量
格式化。
用
任何
数量
格式化。
如果使用引导,请使用
<span class="pre">{{content}}</span>
然后用该类包装您的内容:
{{breaklines title}}
{{content}
如果使用引导,请使用
<span class="pre">{{content}}</span>
然后用该类包装您的内容:
{{breaklines title}}
{{content}
然后,我将以以下方式在模板中使用帮助器:
escapeHTML
是Underline.string的一部分,Underline.string是一个字符串操作扩展集合,您可以使用meteor add下划线字符串:Underline.string
,但任何其他转义html的方法也可以正常工作。
然后,我将以以下方式在模板中使用帮助器:
escapeHTML
是下划线.string的一部分,这是一组字符串操作扩展,您可以使用meteor添加下划线字符串:下划线.string
,但是任何其他转义html的方法都应该很好。只要使用
就足够了,不再有麻烦。只要使用
就足够了,不再有麻烦。也许\r
或\n
或\r\n
会有帮助吗?!也许\r
或\n
或\r\n
会有帮助?!这将打开你的应用程序进行恶作剧,人们可以将标签和javascript放入文本字段。是的,你可以对此加以防范,并且可以辩称你知道文本的来源。但一般来说,这不是随便使用的解决方案。是的,你是对的。我已经更改了接受的答案。这不是问题,用户添加的内容解析无论如何都必须在服务器端完成。这将打开你的应用程序进行恶作剧,人们可以将标签和javascript放入文本字段。是的,你可以对此加以防范,并且可以辩称你知道文本的来源。但一般来说,这不是随便使用的解决方案。是的,你是对的。我已经更改了接受的答案。这不是问题,用户添加的内容解析必须在服务器端完成。您也可以对pre标记应用格式(如果这样做,可能应该向pre添加一个类)。像往常一样,有许多方法可以解决同一个问题。这是最低限度的回答。@bull你救了我的命!!:DYou还可以将格式应用于pre标记(如果这样做,可能应该向pre添加一个类)。像往常一样,有许多方法可以解决同一个问题。这是最低限度的回答。@bull你救了我的命!!:不添加包而转义文本的另一种方法是使用未记录的函数Blaze.\u escape()
。不添加包而转义文本的另一种方法是使用未记录的函数Blaze.\u escape()
。