我在 Handlebars 中显示 json 结果,包括我想使用 .toLocaleString() 格式化的数字。 我的 json 示例:
[{"id": "1",
"results": [{
"price": 5000
},
{
"price": 6000
}]
},
{"id": "2",
"results": [{
"price": 15000
},
{
"price": 16000
}]
}]...
然后我在后端使用 Express 并在前面使用 Handlebars 来渲染它:
{{#each results as |auction|}}
<span class="results__container--price">{{auction.price}} €</span>
{{/each}}
(实际上,情况更复杂)
但我不知道如何使用 toLocaleString()。也许我必须遍历“Express 中的价格”,但我不知道该怎么做。是否可以直接与 Handlebars 一起使用它?
最佳答案
使用辅助函数
Handlebars.registerHelper('toLocaleString', function(number) {
return number.toLocaleString()
})
var source = document.getElementById("temp").innerHTML;
var template = Handlebars.compile(source);
var context = {
title: "Hello",
count: 123456789
};
var html = template(context);
document.getElementById("out").innerHTML = html;
<script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.1.2/handlebars.min.js"></script>
<script id="temp" type="text/x-handlebars-template">
<div class="test">
<h1>{{title}}</h1>
<h2>{{toLocaleString count}}
</div>
</script>
<div id="out"></div>
关于javascript - Handlebars 助手和 .toLocaleString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57098015/