1

在我的 Ember 应用程序中,我有一个名为 Item 的对象模型,它具有一个属性“price”,它包含一个浮点值,例如 20.5。当我在模板 {{price}} 中使用该属性时,我希望它的格式看起来像这样:20.50 美元。

这个对象不是绑定到路由上的控制器的模型,而是 Ember 数组中的一个元素,称为 items,它是路由上模型的属性。所以我的模板中有这样的东西:

{{#each item in items}}
  {{item.price}}
{{/each}}

这个问题看起来很简单,但我真的找不到解决方案。这个想法是我不想更改属性的名称以使其看起来像我想要的那样,因为我可以创建一个计算属性来格式化 price 属性,但是我必须在模板。

4

1 回答 1

1

您可以做的是编写自己的自定义车把助手。对于您的用例,它看起来像这样:

Ember.Handlebars.registerBoundHelper('formatNumber', function(value) {
  return "$" + value.toFixed(2);
});

然后以这种方式在您的模板中使用它:

{{#each item in items}}
  {{formatNumber item.price}}
{{/each}}

请在此处查看工作的jsbin

希望能帮助到你。

于 2013-06-22T18:22:19.583 回答