Ожидание / загрузка представления, пока приложение делает запрос API - PullRequest
1 голос
/ 24 марта 2020

У меня есть базовое представление c с именем QueryResult.

struct QueryResult: View {

    var output: String { MakeDDGRequest(input: input) }

    var body: some View {
        ScrollView {
            VStack(alignment: .leading) {

                Text("Result")
                    .font(.largeTitle)
                    .foregroundColor(Color.blue)
                    .lineLimit(2)
                    .fixedSize(horizontal: false, vertical: true)

                Text(output)
                // Doesn't output anything because the function
                // returns earlier than the API request fetch
            }
        }
    }
}

И я реализовал вызов функции. (Чуть выше определения тела.)

var output: String { MakeDDGRequest(input: input) }

Переменная input определяется в исходном коде как @Binding public var input: String

Когда я вызываю эту функцию (например, когда появляется представление ), Я хотел бы сделать запрос API. Я успешно сделал это, я получил JSON ответ и проанализировал его, но функция возвращается раньше, чем API получает данные, и поэтому он не возвращает никаких данных, которые он получил.

Как можно Я добавляю экран загрузки, пока эта функция извлекает данные из API?

Примечание Обратите внимание, что я использую WatchOS

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...