Swiftでよく使うテクニック
1952 ワード
let className = String(describing: type(of: self))
NSNotification name
がNSNotification.Name
構造体に変更されており、定義を推奨する場合は定数static let kUpdateUserInfo = NSNotification.Name("kUpdateUserInfo")
func uploadfile(_ url :String,par :Dictionary? = nil,filedata :Data? = nil,fileName :String = "iamge.png", call :NetWorkFinishCall?){
Alamofire.upload(multipartFormData: { (MultipartFormData) in
if filedata != nil{
MultipartFormData.append(filedata!, withName: "file", fileName: fileName, mimeType: "image/png");
}
if par != nil{
for (key,value) in par!{
MultipartFormData.append((value as! String).data(using: .utf8)!, withName: key)
}
}
}, to:NetWorkTool.shareInstance.BaseUrl! + APPDefine.APIDefine.register) { (result) in
switch result{
case .success(let upload,_,_):
upload.responseJSON(completionHandler: { (data) in
if let block = call{
if let error = data.error{
}
let jsonObj = JSON(data:data.data!)
block((data.error == nil),jsonObj,data.error)
}
})
break
case .failure(let error):
if let block = call{
block(false,nil,error)
}
break
}
}
}
private(set) var a :String!;
は、外部読み取り専用対内読み取り可能書き込み可能に修飾される.mutating
とstruce
で自分の変数を修正できることを保証するために、enum
で修飾することをできるだけ考慮する.mutating
対class
は無効です.