Sapui5 如果条件允许,请更改图标颜色
我正在使用一个列表来打印模型中的数据,其中一个应该有一个图标。问题是图标根据值的不同而变化,我也应该改变它的颜色 我认为:Sapui5 如果条件允许,请更改图标颜色,sapui5,Sapui5,我正在使用一个列表来打印模型中的数据,其中一个应该有一个图标。问题是图标根据值的不同而变化,我也应该改变它的颜色 我认为: <ObjectListItem title="State" type="Active" number="{/Data/8/state}" icon="{= ${/Data/8/state}.toUpperCase() === 'OK' ? 'sap-icon://accept' : 'sap-icon://decline' }"></ObjectList
<ObjectListItem title="State" type="Active" number="{/Data/8/state}"
icon="{= ${/Data/8/state}.toUpperCase() === 'OK' ? 'sap-icon://accept' :
'sap-icon://decline' }"></ObjectListItem>
像addStyleClass这样的选项似乎不起作用。我通过在SAP添加到图标的id中添加css来更改颜色,但由于它必须根据值进行更改,我不知道如何实现它。
另一个选项是直接向这两个图标添加颜色,但我无法添加类。您可以使用
CustomData
,然后创建一个css选择器来匹配它:
<ObjectListItem title="State" type="Active" number="{/Data/8/state}"
icon="{= ${/Data/8/state}.toUpperCase() === 'OK' ? 'sap-icon://accept' :
'sap-icon://decline' }">
<customData>
<core:CustomData writeToDom="true" key="class" value="{= ${/Data/8/state}.toUpperCase()}" />
</customData>
</ObjectListItem>
嗨,我喜欢你的方法,但它不起作用。它给了我一个错误:带有key类的CustomData应该写入元素sap.m.ObjectListItem#_item15的HTML,但该值不是字符串。-并且没有添加任何数据类。我已经尝试直接写入值:key=“class”value=“OK”,错误消失了,但没有添加任何类added@lorenag83html输出是什么样的?
数据类
属性应添加到
标记中。您可以尝试在chrome dev工具(或浏览器中的等效工具)上运行$(“[data class='OK']”)
,查看它是否返回一些内容。它似乎正在将其添加到列表([data-class='OK'] {
color: blue !important;
}
[data-class='NOT-OK']{
color: red !important;
}