在占位符内的把手

时间:2016-02-25 14:03:40

标签: .net handlebars.net

.NET的把手是否可以做到这样的事情:

var data = new { 
    title = "my title",
    body = "my body, look at {{title}}"
}

我的意思是可以在车把内使用车把 - 价值。 然后我有模板:

string source = @"
  <b>Title</b> {{title}} <br/>
  <b>Body</b> {{body}}
";

我想:

<b>Title</b> my title <br/>
<b>Body</b> my body, look at my title

我知道这看起来有些奇怪,在这种情况下我们可以轻松拆分身体和标题,但它不是我的真实项目,只是类似的例子,我无法在真实项目中进行这样的分裂。 有没有人知道是否可以用把手做这样的事情?如果有可能那么该如何做呢?

2 个答案:

答案 0 :(得分:0)

您可以使用string.Format()方法

沿着这些方向执行某些操作

答案 1 :(得分:0)

这是可能的,但你需要做一些额外的工作来实现它。它可能效果不佳,因为除非你变得更复杂,否则每次运行时都必须重新编译模板。以下是它的工作原理:

Handlebars.RegisterHelper("template", (output, context, arguments) =>
    {
        var template = Handlebars.Compile((string)arguments[0]);
        var result = template(context);
        output.WriteSafeString(result);
    });

你的模板看起来像是:

<b>Title</b> {{title}} <br/>
<b>Body</b> {{template body}}