私はSWIFT 3.0のために約束キットを使用していますが、私はそうは[[EVObject]?]型の値を変換できません期待引数の型に[_]
response.result.value
と私の非同期ネットワーク呼び出しを満たすためにしようとしています私のViewController機能でそれを使用することができます。
FeedbackServices.getFeedbackSubjects().then { (FeedbackSubject) -> Void in
print(FeedbackSubject.count)
}.catch { (error) in
print(error.localizedDescription)
}
これは私のネットワーク層である:
protocol NetworkService
{
static func GET<T:EVObject>(URL: String, parameters: [String: AnyObject]?, headers: [String: String]?) -> Promise<T>
static func GET<T:EVObject>(URL: String, parameters: [String: AnyObject]?, headers: [String: String]?) -> Promise<[T]>
}
extension NetworkService
{
static func GET<T:EVObject>(URL: String,
parameters: [String: AnyObject]? = nil,
headers: [String: String]? = nil) -> Promise<[T]>
{
return Promise { fullFill, reject in
Alamofire.request(URL,
method: .get,
parameters: parameters,
encoding: URLEncoding.default,
headers: headers).responseArray(completionHandler: { response in
if (response.result.isSuccess) {
fullFill([response.result.value])
}else{
reject(response.result.error!)
}
})
}
}
私は、私は次のエラーを取得するプロジェクトビルドしてみてください。
私が仕事で、今は数時間のために立ち往生していると私はそれが働いて得ることはありませんが。追加情報については、私に尋ねるのをためらってください!
解決方法はあなたの答えです!完成ハンドラータイプでした。 –