如何根据 UI5 中的值格式化 table 内的文本字段?
How to format a text-field inside of a table based on its value in UI5?
我有一个 table,其中一列 (sap.m.Text
) 代表二进制值 (0
/1
),我想将其格式化为以下方式:
- 映射:
0
/1
→No
/Yes
- 样式:
No
应该是红色
- 样式:
Yes
应该是绿色
我按照 Step 23: Custom Formatters 中的描述执行的映射,一切正常。
但我正在为样式格式设置而苦苦挣扎。在 Step 22: Expression Binding 中有一个示例如何使用 numberState
根据其值格式化数字,但是,sap.m.Text
(<Text />
) 没有这样的或任何相似 属性.
是否有任何简单的方法可以根据 sap.m.Text
的值应用样式格式?或者唯一的方法是手动应用 CSS 样式?
对于文本:
<ObjectStatus
state = "{= ${isCompleted} === 0 ? 'Error' : 'Success'}"
text = "{= ${isCompleted} === 0 ? ${i18n>STATUS_NO} : ${i18n>STATUS_YES}}" />
对于数字:
<ObjectNumber
number = "{= ${isCompleted} === 0 ? ${i18n>STATUS_NO} : ${i18n>STATUS_YES}}"
state = "{= ${isCompleted} === 0 ? 'Error' : 'Success'}" />
我有一个 table,其中一列 (sap.m.Text
) 代表二进制值 (0
/1
),我想将其格式化为以下方式:
- 映射:
0
/1
→No
/Yes
- 样式:
No
应该是红色 - 样式:
Yes
应该是绿色
我按照 Step 23: Custom Formatters 中的描述执行的映射,一切正常。
但我正在为样式格式设置而苦苦挣扎。在 Step 22: Expression Binding 中有一个示例如何使用 numberState
根据其值格式化数字,但是,sap.m.Text
(<Text />
) 没有这样的或任何相似 属性.
是否有任何简单的方法可以根据 sap.m.Text
的值应用样式格式?或者唯一的方法是手动应用 CSS 样式?
对于文本:
<ObjectStatus
state = "{= ${isCompleted} === 0 ? 'Error' : 'Success'}"
text = "{= ${isCompleted} === 0 ? ${i18n>STATUS_NO} : ${i18n>STATUS_YES}}" />
对于数字:
<ObjectNumber
number = "{= ${isCompleted} === 0 ? ${i18n>STATUS_NO} : ${i18n>STATUS_YES}}"
state = "{= ${isCompleted} === 0 ? 'Error' : 'Success'}" />