Problème avec transfert de données entre class et View

Bonjour à tous,
En modifiant mon code, j’ai cassé un procédé qui marchait très bien et je n’arrive pas à voir pourquoi cela ne marche plus.
J’ai une classe qui s’occupe de récupérer du JSON via un api. Lorsque j’invoque cette class lorsque je viens de la vue n°1 : les données sont bien récupérées sur la vue n°1. Mais lorsque j’invoque cette même classe de la vue n°2 : je vois que les données sont bien reçues par la class APIManager (je fais un print pour m’en assurer) mais elles ne sont pas transmises à la vue n°2.

En gros :
View1 → APIManager → données récupérées sur View1
View2 → APIManager → données NON récupérées sur View2

Voici mon code pour la vue dans laquelle je n’arrive pas à récupérer les données, et la class grâce à laquelle j’utilise l’API :

struct CityDetailsView: View {
    .
	.
	var cite: city
    @ObservedObject var fetchAPI = APIManager()
	.
	.
	.
	Text("\(cite.name), \(cite.state.country.name)")
                .onAppear(perform: {
                    fetchAPI.getPollution(cite: cite)
            })
	.
	.
	.
	ForEach(fetchAPI.cites.indices, id: \.self) { index in
	.
	.
	.
	}
}

class APIManager: ObservableObject {

    @Published var cites: [town] = []
    
    func getPollution(cite:city) {
			.
			.
			.
                        DispatchQueue.main.async {
                            self.cites = downloadedCityDetails
                            print("http: \(self.cites.description)")
                    }
                }
            }
        }
        dataTask.resume()
    }
}

Je n’arrive pas à comprendre pourquoi cela marche dans un cas et pas dans l’autre, sachant que dans les 2 cas les données sont bien récupérées, mais dans un des cas les données sont coincées au niveau de la class APIManager et n’arrivent pas sur la View.

Merci de votre aide :slight_smile:

Pour compléter ma question, j’obtiens ce message lorsque j’essaie de récupérer les données:
« nw_protocol_get_quic_image_block_invoke dlopen libquic failed »