Tôi có người quan sát toàn cầu trong ViewController và cần một số người quan sát khác nhau bên trong nó cho các giá trị cụ thể như dưới đây. Có thể loại bỏ người quan sát sau khi thay đổi giá trị một lần không?Xóa người quan sát sau khi thay đổi giá trị trong Firebase
var ref = Firebase(url: "https://<FIREBASE-APP>.firebaseio.com/")
let handle = ref.observeEventType(.Value, withBlock: { snapshot in
//Here VALUE Changes to NEW_VALUE
if snapshot.value as! String == NEW_VALUE {
//IS IT POSSIBLE TO REMOVE HANDLE HERE????
...something here
}
})
//NOT HERE
...ref.removeObserverWithHandle(handle)
ref.observeSingleEventOfType? – mrkbxt
observSingleEventOfType chỉ quan sát một lần, giống như một truy vấn còn lại và sau đó tự xóa chính nó. Tôi cần quan sát giá trị luôn, cho đến khi nó thay đổi và sau đó loại bỏ nó –
Bạn có thể làm rõ; các nhà quan sát khác nhau cho các giá trị cụ thể? Trong câu hỏi, bạn đang quan sát bởi .value, toàn bộ nút ứng dụng của bạn sẽ kích hoạt mọi chỉnh sửa hoặc xóa sự kiện ở bất kỳ đâu trong nút đó. Nếu có thay đổi, ảnh chụp sẽ trả về * mọi thứ * (tất cả các nút con, con cái của chúng, v.v.) bên trong nút đó, không thể so sánh với một chuỗi. ngay cả khi nó có thể tuy nhiên, nếu bạn loại bỏ các xử lý, các nút ứng dụng sẽ không còn được quan sát cho bất kỳ thay đổi. Bạn có thể tinh chỉnh câu hỏi của bạn được không? – Jay