我是iOS的初学者,我正尝试在Swift中构建图像分类应用。但是,我遇到了两个我不知道如何解决的错误。
第一个错误在guard let strongSelf = self { return }
行上,它说:
“用于条件绑定的初始化程序必须具有可选类型,而不是'ViewController'”
第二个错误在return request
行上,它表示
“ void函数中非预期的非void返回值”
var request: VNCoreMLRequest {
guard let model = try? VNCoreMLModel(for: Fruit().model) else {
fatalError("Can't load model")
}
let request = VNCoreMLRequest(model: model, completionHandler: { (request, error) in
guard let strongSelf = self else { return }
if let error = error {
print("Error making request")
} else {
strongSelf.process(request: request)
}
return request
})
}
如何解决这些错误?谢谢!
第一个错误:
添加[weak self]
捕获组
let request = VNCoreMLRequest(model: model, completionHandler: { [weak self] (request, error) in
第二错误:
无法解决,因为您无法从没有返回值的闭包中返回某些内容。无论如何,包含异步任务的计算属性是不可能的。