Какой аргумент передать вместо (String) -> void? - PullRequest
1 голос
/ 08 мая 2019

Я пытаюсь это исправить очень долго.

Я не могу понять, что передать этой функции вместо "(String) -> void", поскольку она должна была возвращать строку:

var result = myobj.createData(request: request, with: (String) -> void)

Приведенный выше код вызывает следующую функцию:

func createData(request:Crudpb_CreateRequest, with completion: @escaping (String) -> Void) {
    DispatchQueue.main.async {
        self.response = try! self.client.create(request)
        completion(self.response.result)
    }
}

1 Ответ

1 голос
/ 08 мая 2019

Когда вы вызываете эту функцию, вам нужно передать закрытие с типом (String) -> void

myobj.createData(request: request, with: { string in
    print(string)
})

Или

var completion = { string in
    print(string)
}
myobj.createData(request: request, with: completion)

Вы можете сохранить результат как этот

var result = ""
myobj.createData(request: request, with: { string in
    result = string
    self.displayTextArea.text = result
    print(result)
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...