如何在 SAPUI5 中将 "MM/yyyy" 模式格式化为依赖于语言环境的“<month name> / yyyy”?
How to format "MM/yyyy" pattern to locale-dependent "<month name> / yyyy" in SAPUI5?
我从后端获取数据格式为“12/2019”的日期,并希望转换为“Dez / 2019”格式(德语为“Dez”,英语为“Dec”)。有人有想法吗?
我的 XML 视图中的片段:
<cells>
<Text text="{Period}" />
<!-- ... -->
<cells>
Period
是一个 OData V2 实体 属性,它的 EDM 类型是字符串。
试试:
<Text text="{
path: 'Period',
type: 'sap.ui.model.type.Date',
formatOptions: {
pattern: 'MMM / yyyy',
source: {
pattern: 'MM/yyyy'
}
}
}" />
这是一个工作演示(点击 运行 代码片段):
sap.ui.getCore().attachInit(() => sap.ui.require([
"sap/ui/core/Fragment",
], Fragment => Fragment.load({
definition: `<Text xmlns="sap.m"
text="{
value: '12/2019',
type: 'sap.ui.model.type.Date',
formatOptions: {
pattern: 'MMM / yyyy',
source: {
pattern: 'MM/yyyy'
}
}
}"
/>`
}).then(control => control.placeAt("content"))));
<script id="sap-ui-bootstrap"
src="https://openui5.hana.ondemand.com/resources/sap-ui-core.js"
data-sap-ui-libs="sap.ui.core,sap.m"
data-sap-ui-theme="sap_fiori_3"
data-sap-ui-async="true"
data-sap-ui-compatversion="edge"
data-sap-ui-xx-waitfortheme="init"
></script><body id="content" class="sapUiBody"></body>
由于 Period
的 EDM 类型是字符串,在这种情况下只需使用 sap.ui.model.type.Date
就足够了。但是,如果类型为 Edm.DateTime
,通常用于表示 OData V2 中的日期值,则类型为 sap.ui.model<strong>.odata</strong>.type.Date<strong>时间</strong>
要考虑
我从后端获取数据格式为“12/2019”的日期,并希望转换为“Dez / 2019”格式(德语为“Dez”,英语为“Dec”)。有人有想法吗?
我的 XML 视图中的片段:
<cells>
<Text text="{Period}" />
<!-- ... -->
<cells>
Period
是一个 OData V2 实体 属性,它的 EDM 类型是字符串。
试试:
<Text text="{
path: 'Period',
type: 'sap.ui.model.type.Date',
formatOptions: {
pattern: 'MMM / yyyy',
source: {
pattern: 'MM/yyyy'
}
}
}" />
这是一个工作演示(点击 运行 代码片段):
sap.ui.getCore().attachInit(() => sap.ui.require([
"sap/ui/core/Fragment",
], Fragment => Fragment.load({
definition: `<Text xmlns="sap.m"
text="{
value: '12/2019',
type: 'sap.ui.model.type.Date',
formatOptions: {
pattern: 'MMM / yyyy',
source: {
pattern: 'MM/yyyy'
}
}
}"
/>`
}).then(control => control.placeAt("content"))));
<script id="sap-ui-bootstrap"
src="https://openui5.hana.ondemand.com/resources/sap-ui-core.js"
data-sap-ui-libs="sap.ui.core,sap.m"
data-sap-ui-theme="sap_fiori_3"
data-sap-ui-async="true"
data-sap-ui-compatversion="edge"
data-sap-ui-xx-waitfortheme="init"
></script><body id="content" class="sapUiBody"></body>
由于 Period
的 EDM 类型是字符串,在这种情况下只需使用 sap.ui.model.type.Date
就足够了。但是,如果类型为 Edm.DateTime
,通常用于表示 OData V2 中的日期值,则类型为 sap.ui.model<strong>.odata</strong>.type.Date<strong>时间</strong>
要考虑