我有一个模板,由CMS驱动的数据库填充。 CMS中输入数据的人并不真正了解HTML,他们只是说他们这样做。因此,他们将输入一系列中断标记(错误地,提醒您),而不是仅仅将其内容包装在段落中。
然后我将所有这些导入到一个整洁的小模板中,并使用该数据填充数据标签以显示在按钮上,以及其他内容。
我已经看到一些Handlebars Helpers说他们做了一个查找和替换,但我不知道如何在我的模板中编写语法来用grunt编译它而不会标记错误。这是我想要使用的助手:
Handlebars.registerHelper('replace', function( find, replace, options) {
var string = options.fn(this);
return string.replace( find, replace );
});
现在看起来非常直截了当,但除了{{#replace}}之外,没有关于如何在模板中真正抛出藏匿的文档
我试图查看的参数是{{caption}},我正在寻找'的实例' '并用''替换它。
当我写这样的藏匿:{{#replace'<br>
','',caption}},但后来我得到一个解析错误。
在这种情况下,我不确定你是否想要使用块助手。我认为以下常规助手会这样做:
Handlebars.registerHelper('replace', function (find, replace, context) {
return context.replace(new RegExp(find, 'g'), replace);
});
请注意,我使用的是RegExp,以便我们可以替换find
文本的所有实例。
然后,您可以通过以下方式在模板中使用此帮助程序:
{{replace '<br>' ' ' caption}}