SwiftUI environmentObject функция onLoad вызывает автоматическое закрытие листа - PullRequest
0 голосов
/ 19 марта 2020

У меня проблема с 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()
    }
}

спасибо!

...