SAP UI5学习笔记之(八)List中以货币格式显示价格

今天我们使用walkthrough中step21的例子学习一下将数字以货币的格式显示。

为了方便我使用了SAPUI5 DEMO Kit上walkthrough Step21的例子,可以在

https://sapui5.netweaver.ondemand.com/sdk/#/entity/sap.m.tutorial.walkthrough/sample/sap.m.tutorial.walkthrough.21

直接download代码。

 跟原代码不同的是,我把Invoices.json文件放在model文件夹里了,因为数据模型放在model里更合理,当然相应的menifest.json里Invoices.json的uri也需要修改。

 在这个例子中,为了方便直接在Invoices的controller中定义了一个叫view的JSON MODEL,然后在VIEW中使用它。

 在InvoiceList.view.xml中ObjectListItem标签使用了三个属性,title、number和numberUnit。

title是List每个Item的标题,显示在左边。

number是数值项目。这里我们想用货币格式显示。

numberUnit是数值的单位。

我们通过向ObjectListItem控件添加number和numberUnit属性来表示价格,

然后通过将绑定语法的type属性设置为sap.ui.model.type.Currency,将number的值以货币格式表示出来。

parts属性的功能是将不同模型中的多个属性同时绑定到控件的单个属性。

本例中绑定了来自invoice和view两个模型的不同属性。

formatOptions可以在其中加上其他操作,比如showMeasure:显示度量衡。本例为了展示numberUnit属性,把showMeasure设为false,大家可以自己改成true看看效果。

 运行一下。

 提示:

我们的Invoices.json中Milk的价格是9.99999,但是显示出来是10.00。

这是因为type属性是货币,SAPUI5自动识别parts后面的属性的值EUR欧元保留两位小数显示。

可以将controller中view model的currency属性的值改为"JPY"日元,这样显示出的价格就会没有小数了,因为日元没有小数。

同样的,可以改为CNY人民币、USD美元试试。

原文地址:https://www.cnblogs.com/snaildreams/p/13427888.html