|数字| 1 3 4 |
例如,我需要显示" 1"如红色," 3"如绿色。他们在同一个牢房里。我知道我可以使用单元格类来更改一个单元格中的整个数据颜色。但那不是我想要的。
你能不能给我一些线索来解决这个问题?或者这是其他任何方式,如Angular UI或使用其他库。
由于
答案 0 :(得分:2)
我怀疑这不是一个ui-grid的东西,而是一个关于如何使用角度颜色渲染数据的一般性问题。
我可能会使用自定义的cellTemplate和某种ng-style来做到这一点。问题是你的数据是如何到达单元格的 - 1 3 4
来自单元格值,或者你还有其他东西在进行?
假设它们属于单元格值,那么您可能需要类似
的内容<div ng-style="grid.appScope.setStyle(grid.appScope.left(COL_FIELD)>grid.appScope.left(COL_FIELD)</div>
<div ng-style="grid.appScope.setStyle(grid.appScope.mid(COL_FIELD)>grid.appScope.mid(COL_FIELD)</div>
<div ng-style="grid.appScope.setStyle(grid.appScope.right(COL_FIELD)>grid.appScope.right(COL_FIELD)</div>
其中
- setStyle
是范围内的一个函数,它接受一个数字并决定应用于哪种样式
- left
从您的数据中获取最左边的数字
- mid
从您的数据中获取中间数字
- right
从您的数据中获取最右边的数字
如果你的输入结构不同,那么还有其他方法可以使用cellTemplates来获得你想要的结果。
编辑:根据更多信息,我认为你想要将你的字符串呈现为html,然后将该HTML解析为单元格。我认为这是一个更广泛的问题“angularJS如何为我渲染任意HTML”,答案可能是ng-bind-html,虽然我对此并不了解。理论上,您可以在html中创建标记,然后使用cellTemplate中的ng-bind-html='COL_FIELD'
将生成的标记绑定到单元格中。