L_7*_*337 0 handlebars.js handlebars.net
在 Handlebars.Net 中,如果没有匹配的字段,它只会在那里放置一个空白。
string source = @"My name is {{Name}} and I work at {{Job}}";
var template = Handlebars.Compile(source);
var data = new {
Job = "Walmart"
};
var result = template(data);
Run Code Online (Sandbox Code Playgroud)
之所以会这样,{{Name}}是因为不在数据中。
我的名字是,我在沃尔玛工作
有什么设置要说,如果数据字段不存在就不要替换它吗?
我希望它返回:
我的名字是{{Name}},我在沃尔玛工作
小智 5
有两种选择:
1.x 支持:使用 UnresolvedBindingFormatter
handlebars.Configuration.UnresolvedBindingFormatter = "('{0}' is undefined)";
从2.0.0-preview-1开始支持:使用helperMissing钩子
handlebars.RegisterHelper("helperMissing", (context, arguments) =>
{
var name = arguments.Last().ToString();
return "{{" + name.Trim('[', ']') + "}}";
});
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请参阅此 GitHub 问题。
| 归档时间: |
|
| 查看次数: |
178 次 |
| 最近记录: |