SAP UI5学习笔记之(八)List中以货币格式显示价格
今天我们使用walkthrough中step21的例子学习一下将数字以货币的格式显示。
为了方便我使用了SAPUI5 DEMO Kit上walkthrough Step21的例子,可以在
直接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美元试试。