gpt4 book ai didi

javascript - 将对象作为参数传递给 Handlebars 模板中的 onclick 方法

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:46:03 24 4
gpt4 key购买 nike

我有一个如下所示的 JSON:

{
list: [
{ name: 'AAA',
id: 1,
age: 34
},
{ name: 'BBB',
id: 2,
age: 24
}
]
}

像这样的模板:

<ul>
{{#each list}}
<li onclick="someFunc({{this}})">{{name}} ({{age}}) </li>
{{/each}}
</ul>

基本上我只是想将当前对象传递给一个用它做某事的函数。

现在,如果我尝试一下,那么生成的 HTML 就只有

 ... onclick="someFunc( [object Object] )" ...

而我希望它是这样的:

 ... onclick="someFunc( {name: 'AAA', id: 1, age: 34} )" ...

我该如何解决这个问题?

最佳答案

张贴以备将来引用:

从这里得到我的答案:

Handlebars.js parse object instead of [Object object]

事实证明,Handlebar 在将数据粘贴到模板之前对数据执行了一个 toString 操作。我所要做的就是注册一个辅助方法,将其转换回 json。

Handlebars.registerHelper('json', function(context) {
return JSON.stringify(context);
});

<li onclick="someFunc({{json this}})">{{name}} ({{age}}) </li>

关于javascript - 将对象作为参数传递给 Handlebars 模板中的 onclick 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26642048/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com