Swift开发 ---报错Constant ‘password’ used before being initialized 初始化之前被使用
2016-04-12 16:19
417 查看
初始化变量时可以这样来初始化~~
var account: String
var password:String
if (userDefaults.objectForKey(WeixinGlobals.PREF_ACCOUNT) !=nil)
{
account = (userDefaults.objectForKey(WeixinGlobals.PREF_ACCOUNT)as?
String)!
} else {
account = ""
}
if (userDefaults.objectForKey(WeixinGlobals.PREF_PASSWORD)
!= nil) {
password = (userDefaults.objectForKey(WeixinGlobals.PREF_PASSWORD)as?
String)!
} else {
password = ""
}
dispatch_sync(dispatch_get_main_queue(), {
loginTask1(account, passwordMD5: password.md5)
})
下面的例子同样报错:
let spinner :
JHSpinnerView?
if view !=
nil {
spinner = Utility.showLoading(view!)
}
Alamofire.upload(.POST,
WeixinGlobals.JsonUrl, data: requestJSON.rawString()!.dataUsingEncoding(NSUTF8StringEncoding)!).responseString
{ (response) in
if view !=
nil {
spinner!.dismiss()
}
switch response.result {
case .Success:
let data:
NSData! = response.result.value?.dataUsingEncoding(NSUTF8StringEncoding)
let json =
JSON(data: data)
print("请求成功,返回 : \n" + json.rawString()!)
if (json["code"].int
== 0) {
backJSON(json: json)
} else {
Utility.showErrorMsg(view!,errorCode:json["code"].int!,
errMsg: json["msg"].string!)
}
case .Failure(let error):
SVProgressHUD.showErrorWithStatus("请求超时或网络断开")
print("请求失败")
print(error)
}
}
解决方法:->
var spinner : JHSpinnerView? =
nil
if view !=
nil {
spinner = Utility.showLoading(view!)
}
Alamofire.upload(.POST,
WeixinGlobals.JsonUrl, data: requestJSON.rawString()!.dataUsingEncoding(NSUTF8StringEncoding)!).responseString
{ (response) in
if view !=
nil {
spinner!.dismiss()
}
switch response.result {
case .Success:
let data:
NSData! = response.result.value?.dataUsingEncoding(NSUTF8StringEncoding)
let json =
JSON(data: data)
print("请求成功,返回 : \n" + json.rawString()!)
if (json["code"].int
== 0) {
backJSON(json: json)
} else {
Utility.showErrorMsg(view!,errorCode:json["code"].int!,
errMsg: json["msg"].string!)
}
case .Failure(let error):
SVProgressHUD.showErrorWithStatus("请求超时或网络断开")
print("请求失败")
print(error)
}
}
var account: String
var password:String
if (userDefaults.objectForKey(WeixinGlobals.PREF_ACCOUNT) !=nil)
{
account = (userDefaults.objectForKey(WeixinGlobals.PREF_ACCOUNT)as?
String)!
} else {
account = ""
}
if (userDefaults.objectForKey(WeixinGlobals.PREF_PASSWORD)
!= nil) {
password = (userDefaults.objectForKey(WeixinGlobals.PREF_PASSWORD)as?
String)!
} else {
password = ""
}
dispatch_sync(dispatch_get_main_queue(), {
loginTask1(account, passwordMD5: password.md5)
})
下面的例子同样报错:
let spinner :
JHSpinnerView?
if view !=
nil {
spinner = Utility.showLoading(view!)
}
Alamofire.upload(.POST,
WeixinGlobals.JsonUrl, data: requestJSON.rawString()!.dataUsingEncoding(NSUTF8StringEncoding)!).responseString
{ (response) in
if view !=
nil {
spinner!.dismiss()
}
switch response.result {
case .Success:
let data:
NSData! = response.result.value?.dataUsingEncoding(NSUTF8StringEncoding)
let json =
JSON(data: data)
print("请求成功,返回 : \n" + json.rawString()!)
if (json["code"].int
== 0) {
backJSON(json: json)
} else {
Utility.showErrorMsg(view!,errorCode:json["code"].int!,
errMsg: json["msg"].string!)
}
case .Failure(let error):
SVProgressHUD.showErrorWithStatus("请求超时或网络断开")
print("请求失败")
print(error)
}
}
解决方法:->
var spinner : JHSpinnerView? =
nil
if view !=
nil {
spinner = Utility.showLoading(view!)
}
Alamofire.upload(.POST,
WeixinGlobals.JsonUrl, data: requestJSON.rawString()!.dataUsingEncoding(NSUTF8StringEncoding)!).responseString
{ (response) in
if view !=
nil {
spinner!.dismiss()
}
switch response.result {
case .Success:
let data:
NSData! = response.result.value?.dataUsingEncoding(NSUTF8StringEncoding)
let json =
JSON(data: data)
print("请求成功,返回 : \n" + json.rawString()!)
if (json["code"].int
== 0) {
backJSON(json: json)
} else {
Utility.showErrorMsg(view!,errorCode:json["code"].int!,
errMsg: json["msg"].string!)
}
case .Failure(let error):
SVProgressHUD.showErrorWithStatus("请求超时或网络断开")
print("请求失败")
print(error)
}
}
相关文章推荐
- iOS/SWIFT开发常用的代码
- Swift笔记:可选类型
- swift版视频录制后格式转换,转载请声明
- AVCaptureSession横屏下图层方向问题(swift)
- swift throws 捕获异常
- Swift中去掉字符串格式数字小数点后多余的0 (自写)
- Viewing the interface of your Swift code,查看Swift代码的头文件的三种方法
- 自定义滑条封装含有百分比例显示(swift版)
- swift Defer语法
- swift Guard语法
- Swift中声明协议中的class关键字的作用
- Swift中声明协议中的class关键字的作用
- Swift中声明协议中的class关键字的作用
- swift学习日记-可选链(optional chaining)
- swift学习日记-基础部分
- Swift字符串和基本数据类型之间转换
- Swift3.0获取APP版本号,提示用户升级
- Swift Tour
- Swift 定位 SwiftLocationManager
- swift 初步接触 基本语法 方法命名 !和?区别 as!和as?区别 let和var区别 extension override private (一)