簡體   English   中英

Ag-grid:僅在值更改時更改單元格的顏色

[英]Ag-grid: Change the color of cell only on value change

我想傳遞兩個用例,假設 cell 的值最初是 1

  1. 如果我改變它 2 那么單元格的顏色應該改變。
  2. 如果我再次改回 1,則單元格的顏色不應更改。

在這里,我的第一個用例可以通過使用 ag-grid 提供的有趣的 onValueChanged() 成功通過,我可以在其中跟蹤舊值和新值

(params.oldvalue !== params.newValue ? {color: red} : {}

但是對於第二種情況,問題是我們無法跟蹤舊值 i,e 1 一旦它從 2 再次變為 1,因為 2 變為舊值而 1 變為新值

認識到網格是顯示數據的 UI 組件很重要。 它顯示您綁定到它的“行”屬性的任何內容。

網格不是您的數據存儲。 您的數據存儲或數據存儲的(可能發生變異的)副本已綁定到網格,但網格不是您的數據。

我怎么強調都不過分,我發現自己在 SO 上重復了很多這個建議。

一旦您意識到這一點,ag-grid 將不負責確定它顯示的數據是否與您最初綁定到它的數據不同,例如來自 API 調用。

如果您需要恢復一段數據的“已更改”state,那么您將不得不保留兩份數據(在您的組件或組件的數據存儲中,如果有的話):初始數據,以及當前綁定到網格的數據。

然后,您的單元格渲染器(或 css classRules,或您用來指示“已更改”狀態的任何內容)可以將當前值與原始值進行比較,而不依賴於網格的行為。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM