Tôi muốn đồng bộ hóa dữ liệu, do đó tôi có đối tượng dữ liệu chứa trạng thái hiện tại. Khi điều này được thay đổi, tôi muốn thiết lập một thuộc tính trên đối tượng để tôi có thể lọc theo điều này khi đồng bộ hóa. Cấu trúc đối tượng là:Sử dụng góc để đánh dấu các phần tử đã sửa đổi trong danh sách
data = {
type1: [
{a:"a", b:"b"},...
]
type2: [
{c:"c", d:"d"},...
]
}
Ví dụ nếu data.type1 [0] .a = "test" sẽ được thực hiện, tôi muốn thêm sửa đổi: đúng đối tượng để nó sẽ là
{a:"test", b:"b", modified:true}
Tôi đã thử $ watch (dữ liệu, hàm(), true) nhưng tôi không thể tìm thấy cách tôi có thể xem đối tượng nào đã được thay đổi và tìm kiếm cả hai đối tượng dữ liệu đã cho. $ watchcollection (khi chỉ tìm kiếm thêm/xóa) cũng không đưa ra chỉ mục.
Có cách nào để tìm ra đối tượng nào đã thay đổi không? Hoặc là có một thư viện khác có thể làm tốt điều này?
Cảm ơn bạn
EDIT:
Tôi tạo ra một jsfiddle: https://jsfiddle.net/yfo8xwah/
'$ pristine' Would góc và 'dirty' công việc $ cho bạn? https://docs.angularjs.org/api/ng/type/form.FormController – Aaron
một cách là có nhưng không hiệu quả như vậy là '$ watch' cung cấp cho bạn' newVal' và 'oldVal' và bạn có thể so sánh cả hai để tìm cái nào đã được thay đổi. – vinayakj
Bạn vui lòng chia sẻ thêm mã không? – Vineet