Tôi đang sử dụng Firebase cho ứng dụng web. Nó được viết bằng Javascript đơn giản bằng cách sử dụng không có thư viện bên ngoài.Cách xóa/xóa các nút trên Firebase
Tôi có thể "đẩy" và truy xuất dữ liệu bằng '.on ("child_added")', nhưng '.remove()' không hoạt động theo cách mà nó nói. Theo API,
"Firebase.remove() - Hủy bỏ các dữ liệu tại địa điểm căn cứ hỏa lực này Mọi dữ liệu tại các địa điểm đứa trẻ cũng sẽ bị xóa Hiệu quả của xóa sẽ được hiển thị ngay lập tức..."
Tuy nhiên, việc xóa không xảy ra ngay lập tức; chỉ khi toàn bộ kịch bản được thực hiện đang chạy. Tôi cần phải loại bỏ và sau đó sử dụng cây bị xóa ngay sau đó.
Ví dụ mã:
ref = new Firebase("myfirebase.com") //works
ref.push({key:val}) //works
ref.on('child_added', function(snapshot){
//do stuff
}); //works
ref.remove()
//does not remove until the entire script/page is done
Có một bài tương tự here nhưng tôi không sử dụng các thư viện Ember, và ngay cả như vậy nó có vẻ như một cách giải quyết cho những gì nên càng đơn giản như API giải thích nó được.
Khá rõ ràng những gì bạn cho là sai ở đây. Xóa() hoạt động tốt. Bạn đang thực hiện rất nhiều hoạt động không đồng bộ ở đây và dường như cho rằng chúng đồng bộ (gợi ý: không đảm bảo thứ tự những sự kiện đó sẽ diễn ra trừ khi bạn sử dụng gọi lại thành công để kích hoạt sự kiện tiếp theo) – Kato