Kỹ thuật nào sẽ được sử dụng để triển khai chèn/cập nhật hàng loạt cho Backbone.sync?mở rộng Backbone.sync để đồng bộ hóa hàng loạt?
Trả lời
Tôi đoán nó phụ thuộc vào các tình huống sử dụng của bạn và số tiền bạn muốn thay đổi mã gọi. Tôi nghĩ rằng bạn có hai lựa chọn:
Lựa chọn 1: Không thay đổi cho khách hàng (gọi) mã
Lạ lùng thay các chú thích source for Backbone.sync cho 'trộn' như một lý do có thể cho trọng các sync
phương pháp:
Sử dụng setTimeout để cập nhật hàng loạt các bản cập nhật nhanh chóng thành một yêu cầu duy nhất.
Thay vì thực sự lưu trên đồng bộ, thêm yêu cầu vào hàng đợi và chỉ lưu hàng loạt thường xuyên. _.throttle
hoặc _.delay
có thể giúp bạn ở đây.
Lựa chọn 2: Thay đổi mã khách hàng
Ngoài ra, thay vì gọi save
trên mô hình của bạn, bạn có thể thêm một số loại save
phương pháp để các bộ sưu tập. Bạn sẽ phải theo dõi các mô hình nào đã được sửa đổi và do đó cần cập nhật, vì theo như tôi có thể nói, Backbone chỉ biết liệu chúng có mới hay không (nhưng tôi có thể sai về điều đó).
Đây là cách tôi đã làm nó
Backbone.originalSync = Backbone.sync;
Backbone.sync = function (method, model, options) {
//
// code to extend sync
//
// calling original sync
Backbone.originalSync(method, model, options);
}
hoạt động tốt đối với tôi, và tôi sử dụng nó để kiểm soát mọi yêu cầu ajax sắp ra của bất kỳ mô hình hoặc bộ sưu tập
- 1. Đồng bộ hóa một Hàng đợi
- 2. Đơn đặt hàng được đồng bộ hóa
- 3. Xử lý hàng đợi không đồng bộ với phần mở rộng phản ứng
- 4. Cách đồng bộ hóa tùy chọn tiện ích mở rộng chrome
- 5. Kiểm tra đồng bộ hóa Google Chrome nếu được bật qua API/Tiện ích mở rộng?
- 6. Mẫu thiết kế đồng bộ hóa đồng bộ hóa tối ưu hóa
- 7. Làm phương pháp mở rộng Không đồng bộ
- 8. đồng bộ hóa (this) vs đồng bộ hóa (MyClass.class)
- 9. Mở rộng Giỏ hàng Magento
- 10. Điều gì có nghĩa là "đồng bộ hóa nhanh" không được đồng bộ hóa?
- 11. cài đặt đồng bộ hóa không gian làm việc eclipse - những gì cần đồng bộ hóa?
- 12. Đồng bộ hóa IMAP
- 13. hàng loạt mở rộng tập tin đổi tên, bao gồm cả thư mục con
- 14. Hàng loạt chuẩn hóa kết thúc dòng trong Visual Studio
- 15. Node.js async để đồng bộ hóa
- 16. Tại sao hàng rào đồng bộ hóa bộ nhớ chia sẻ khi memoryBarrier không?
- 17. cài đặt đồng bộ hóa chung "tự động đồng bộ hóa" hộp kiểm lập trình
- 18. Đồng bộ hóa cuộc gọi không đồng bộ trong C#
- 19. Đồng bộ hóa Android strings.xml
- 20. Semaphore và đồng bộ hóa
- 21. Thuật toán đồng bộ hóa
- 22. Tệp loạt - Xóa tệp mở rộng thứ hai
- 23. Đồng bộ hóa với RestKit
- 24. Backbone.sync trên mỗi mô hình
- 25. Đồng bộ hóa trò chơi nhiều người
- 26. Rào cản đồng bộ hóa Qt?
- 27. Đồng bộ hóa địa chỉ trong iOS
- 28. EJB và Đồng bộ hóa
- 29. Đồng bộ hóa cuộn UIScrollView
- 30. Đồng bộ hóa SQL 2012
Nếu tôi sử dụng '_.throttle' hoặc' _.delay', làm cách nào để gửi nhiều 'cập nhật' trong một yêu cầu ajax? mảng các mô hình? – Henry
Có nhiều cách khác nhau và thực sự nó phụ thuộc vào mẫu truy cập dữ liệu của bạn. Có một cuộc thảo luận ở đây: http://stackoverflow.com/questions/411462/restful-way-to-create-multiple-items-in-one-request – stusmith