mustache javascript模板中函数的意外第二个参数
我注意到在使用lambdas时:mustache javascript模板中函数的意外第二个参数,javascript,html,templates,mustache,Javascript,Html,Templates,Mustache,我注意到在使用lambdas时: { "name": "Willy", "wrapped": function() { return function(text) { return "<b>" + render(text) + "</b>" } } } 它返回html,给定一个模板(带有初始输入json对象) 因此,如果我有lambda,如下所示: "wrapped": function() { return function
{
"name": "Willy",
"wrapped": function() {
return function(text) {
return "<b>" + render(text) + "</b>"
}
}
}
它返回html,给定一个模板(带有初始输入json对象)
因此,如果我有lambda,如下所示:
"wrapped": function() {
return function(text, func) {
....
}
人们期望func(“{{name}”)
返回表示div的html,其中的内容用json数据对象的“name”属性中的任何内容填充
但是,func(“{.}”)
不起作用。
我希望对象代表初始输入对象
取而代之的是字符串
“[object]”
。当我尝试使用JSON.parse
时,它会给我一个“意外的标记o”错误。您试图作为JSON解析的代码实际上不是JSON。它只是一个JavaScript对象文本。因此,当您尝试将{.}
放入模板时,您得到的是[object object]
,因为这是对象的字符串表示形式。是否有任何方法可以从lambda函数中访问对象?您的示例有点难以理解,但似乎将其作为胡子模板的一部分进行渲染是错误的。你想在你的小胡子模板中使用它做什么?我正在使用该模板生成html(例如表格)代码,或者使用对象数组生成我的站点。我想使用Jquery.data()方法将每个对象分配给表中的每个行元素,那么您不应该使用{{{key for object}}}stuff{{/key for object}}吗?我不确定您是否可以将对象传递到Mustach模板中,并将其作为对象使用,而不是与block语句一起使用。谢谢,是的。我会像你建议的那样使用一把钥匙。非常感谢。
"wrapped": function() {
return function(text, func) {
....
}