У меня проблема с environmentObject, при открытии листа этот автомат c автоматически закрывается, если я комментирую работу функции onappear.
на странице листа, у меня есть
@EnvironmentObject var networkManagerNewsWags: NetworkManagerNewsWags
var body: some View {
......
.onAppear {
self.networkManagerNewsWags.getNewsById(id: self.data.id)
}
}
это класс:
class NetworkManagerNews: ObservableObject {
@Published var newsById: Array<News> = []
@Published var loadingNewsById = false
private let api_url_base = "mylink"
init() {
// loadingNewsById = true
}
func getNewsById(id: Int) {
loadingNewsById = true
guard let url = URL(string: "\(api_url_base)/getNewsByID/\(id)") else { return }
URLSession.shared.dataTask(with: url){ (data, _, _) in
guard let data = data else { return }
let newsByWagsList = try! JSONDecoder().decode(Array<News>.self, from: data)
DispatchQueue.main.async {
self.newsById = newsByWagsList
self.loadingNewsById = false
}
}.resume()
}
}
спасибо!