탭을 전환할 때마다, viewWillAppear() 실행
→ bookmark 목록이 중복으로 추가됨
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
if storedCities.isEmpty {
guard let resultArray = BookMark.fetchCity() else { return }
for index in resultArray.indices {
guard let cityName = resultArray[index].value(forKey: AppText.ModelText.attributeName) as? String else { return }
storedCities.append(cityName)
DispatchQueue.global().async {
self.requestCurrentWeatherOfCity(cityName: cityName)
self.requestForecastWeatherOfCity(cityName: cityName)
}
}
}
}
tabBar의 각 ViewController는 메모리에 적재된 상태임을 알 수 있었음.