基于部分模型的SAPUI5格式

时间:2016-07-15 15:11:13

标签: sapui5

在下面的SAPUI5课程/教程中,我学会了如何使用以下方式将数字格式化为货币:(这是App.view.xml)

                                items="{/ProductSet}">
                                <items>
                                    <ObjectListItem
                                        title="{Name}"
                                        number="{
                                            parts: [
                                                {path: 'Price'},
                                                {path: 'CurrencyCode'}
                                            ],
                                            type: 'sap.ui.model.type.Currency',
                                            formatOptions: {
                                                currencyCode: false
                                            }
                                        }"
                                        ...

这很好用。 Price和CurrencyCode都在我的模型中。

如何在我的模型中格式化一个已知为特定货币(如美元或欧元)的数字?我试过改变

{path: 'CurrencyCode'}

'USD'

但这没有出现美元符号。如果不编写自定义格式化程序,这可能吗?

1 个答案:

答案 0 :(得分:1)

您可以使用viewmodel(这是一个单独的名为JSONModel,其中包含一些常量,可以在视图中使用,在控制器onInit()中创建)并将货币放在那里:

<ObjectListItem
                                    title="{Name}"
                                    number="{
                                        parts: [
                                            {path: 'Price'},
                                            {path: 'view>/CurrencyCode'}
                                        ],
                                        type: 'sap.ui.model.type.Currency',
                                        formatOptions: {
                                            currencyCode: false
                                        }
                                    }" 

并在控制器中:

onInit:function() {
  this.getView().setModel(new JSONModel({ CurrencyCode: "USD"}), "view");
}