3
옵저버를 제거하는 데 문제가 있습니다. 이벤트가, LISTOFITEMS가 removeAllObservers observer 제거되지 않았습니다.
[refToListOfItems observeEventType:FEventTypeValue withBlock:^(FDataSnapshot *snapshot) {
NSLog(@"responding to value change in the list of items");
}];
관찰되고 있지만 어떤 시점에서, 나는 항목 1 키를 업데이트하려면 다음
는 데이터 구조 처음
listOfItems
Item 1
Key:Value
Item 2
Key:Value
에도 removeAllObservers 후 화재로 나타납니다 값 쌍을 관찰하지 않고 아이템 1에서 관찰자를 제거합니다.
[refToItem1 removeAllObservers];
는 항목 1
NSDictionary *testData = @{
@"newKey": @"newValue"
};
[refToItem1 updateChildValues:testData];
의 사전을 업데이트를 진행하지만, 관찰자 이벤트는 여전히 refToItem1 요소에 대해 발생합니다.
무엇이 누락 되었습니까?
수정 개체를 관찰하는 것은 해당 개체에 암시 적으로 설정되어있는 경우에만 제거 할 수있는 것처럼 보입니다. 즉, 객체에 대해 관찰을 설정하면 해당 관찰을 제거 할 수 있습니다. 그러나 관찰되는 첫 번째 객체의 하위 객체에서는 제거 할 수 없습니까?