2013-08-19 36 views
0

我想用動態數據創建一個表格的例子,這個數據也表明表值已經改變。在angular JS中創建一個表格的好方法是什麼?

想象一下數據表。一行中的一個單元格會更改其值,並且會變成綠色以顯示它已更改。

我是Angular的新手。我已經通過了這個教程,但我正在努力找出正確的方法來解決這個問題。我並不是要求一步一步的教程,但如果一位角度老手能夠給我一個廣泛的方法,以瞭解我需要關注的Angular的哪些部分以及關於如何最好地構建應用程序的一些技巧,這將是一個很大的幫助。

現在我有一個連接到$scope.rows的JSON對象數組和使用ng-repeat創建的行。有一個按鈕隨機更改行數據中的某些值。這似乎在按照我的預期更新行,但我還沒有想出如何彌合數據綁定和dom操作之間的差距。我的方法可能是錯的。

+0

你能否詳細說明「表值發生了什麼變化」的含義?他們是用戶可編輯還是有一些更新週期? –

+0

當模型中的數據更改時,單元格將更新。現在我有一個觸發變化的按鈕。 – gargantuan

回答

1

您需要檢測行對象何時發生更改以及更改了哪個元素。我做了類似的事情,首先創建行對象的副本,然後在scope.rows上添加一個監視(確保包含對象相等標誌)。當手表觸發時,循環訪問scope.rows對象,當您找到不同的元素時,在其上放置一些布爾屬性並將其設置爲true。

在你行DOM標籤,使用:

ng-class="{highlightRowCSSClass:row.boolProp, normalRowCSSClass:!row.boolProp }" 

,並設置highlightRowCSSClass是要表明改變的元素不管。

將對象設置爲prop後,將行的副本設置爲當前的行,並等待手錶再次觸發。當您再次循環時,您需要清除每個元素的舊值,因此您沒有兩個「開」的元素。

+0

謝謝你,這比我想象的要簡單得多。 – gargantuan

相關問題