Javascript 如何在mustache.js演示页面上使用lambdas?

Javascript 如何在mustache.js演示页面上使用lambdas?,javascript,templates,mustache,Javascript,Templates,Mustache,我已经试了大约一个小时让lambda使用mustache.js。几乎所有在线演示lambdas的示例都是通过将json声明为与js内联来实现的。 我尝试了以下JSON: { "planet": "The be the name", "lambda": "function() {return \"{{planet}}\"}" } 留着以下胡子: {{lambda}} 。。没有成功。有没有办法使用小胡子演示页面来演示lambdas 非常感谢您的帮助。演示页面上似乎不支持lambda,尽

我已经试了大约一个小时让lambda使用mustache.js。几乎所有在线演示lambdas的示例都是通过将json声明为与js内联来实现的。
我尝试了以下JSON:

{
  "planet": "The be the name",
  "lambda": "function() {return \"{{planet}}\"}"
}
留着以下胡子:

{{lambda}} 
。。没有成功。有没有办法使用小胡子演示页面来演示lambdas


非常感谢您的帮助。

演示页面上似乎不支持lambda,尽管它们可以正常使用库。可能是疏忽,但我可能错了。

一个没有。不可能将lambda表示为JSON。您的示例只是两个字符串,如果您
eval()
it,其中一个正好是函数。这将有助于:

{
    "planet": "World",
    "lambda": function() { return "{{planet}}" }
}

。。。除了它是无效的JSON,所以它不会:(

我在我的js代码中声明我的lambda。从服务器捕获JSON并将其放入
myVar
之后,在调用
Mustache.render
之前,我会执行以下操作:

myVar.myLambda = function(text,render) {
    return '<b>'+render(text)+'<b>';
}

这就是让我感到困惑的地方。看起来只有在JS中定义JSON时才能使用lambdas。因此,看起来无法将lambda功能与over-the-wire JSON对象一起使用,因为JSON将无效。是的。这是正确的。一种常见的方法是将数据作为JSON通过wire发送,然后通过JSON在lambdas中混合呈现。从演示页面查看源代码,版本显示为“0.2.3-dev”,而mustache.js github的主分支显示为“0.7.2”。
<div class="blah"><p>The planet is: {{#myLambda}}{{planet}}{{/myLambda}}</p></div>