我如何得到一个数组?

How do I results to an array?

使用 JSON 执行了解析操作。我创建了完成。我从这里得到字符串值。我将这些字符串传递给初始化程序。如何将此字符串添加到数组?

我的模型Class:

class ExamplesModel {
    var name: String
    init(name: String) {
        self.name = name
    }
}

完成阶段:

DispatchQueue.main.async {
let examplesModel = ExamplesModel(name: name)
completion(.Success(examplesModel))
}

定义完成变量:

enum Result<T> {
case Success(T)

case Error(String)
}

我想将字符串追加到数组中:

class ViewController: ... {
var exampleArray = [String]()
...
..
.
override func viewWillAppear(_ animated: Bool) {
...
..
.
self.exampleFunc(...some-variables...) { (result) in
//what should I write here?
}
}

只需在得到的result上的completionHandler中添加Switch语句即可。对于 case Success,从 model 获取 name 并从 append 获取 names array 像这样,

var names = [String]()

self.exampleFunc(chosenLatitude: "", chosenLongitude: "") { (result) in
    switch result {
    case let .Success(model):
        self.names.append(model.name)

    case let .Error(error):
        print(error)
    }
}

在您调用 exampleFunc 的方法范围之外创建 names,例如:作为 class property.