繁体   English   中英

如何使用JsRender模板格式化小数

[英]How to format decimal using JsRender templates

我在cshtml页面中使用JsRender模板。 我的数据中有一些十进制值,想要在逗号后显示2个数字,例如17,89或3,00。 当我的数据中有3个时,模板中仅显示3个。

如何格式化十进制数据?

模板中的一个小例子显示了我如何使用数据{{> rate}}

谢谢

如果保证rate是一个数字,则可以使用JavaScript toFixed()这样:

{{:rate.toFixed(2)}}

如果rate可以是字符串,则可以通过将其强制为数字

{{:(+rate).toFixed(2)}}

如果要更好地分离代码和标记,可以定义一个转换器

$.views.converters("dec",
  function(val) {
    return (+val).toFixed(2);
  }
);

然后写:

{{dec:rate}}

您甚至可以使转换器更智能,并接受places=n属性来配置小数位数:

$.views.converters("dec",
  function(val) {
    return (+val).toFixed(this.tagCtx.props.places || 2);
  }
);

然后可以选择指定小数位数:

{{dec:rate places=3}}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM