使用Handlebars.Net,我希望创建一个HandlebarsHelper,它将用<br>标记代替回车和换行符。它应该是这样的:
string pattern = @"/(\r\n|\n|\r)/gm";
string replacement = "<br>";
Regex rgx = new Regex(pattern);
Handlebars.RegisterHelper("link_to", (string text) =>
{
text = rgx.Replace(text, replacement);
});编译器(或resharper)告诉我,它无法判断我是试图使用HandlebarsBlockHelper还是HandlebarsHelper,而且在这两种情况下我都忽略了参数。
发布于 2016-04-08 23:43:02
在C# Regex类的帮助下,它看起来像这样:
var newlineRegx = new Regex("(\\r\\n|\\n|\\r)",RegexOptions.Multiline);
Handlebars.RegisterHelper("handleNewLines", (output, context, arguments) =>
{
var str = newlineRegx.Replace((string)arguments[0], "<br>");
output.Write(str);
});回答我的问题:
要更好地理解参数对象列表,将有助于了解如何在HTML模板中使用此助手:
<div>
<p>{{{handleNewLines StringVariable}}}</p>
</div>其中"StringVariable“是传递给我用Handlebars.Compile()创建的委托的JSON对象的成员。
https://stackoverflow.com/questions/36506733
复制相似问题