'NSError' 类型的值永远不能为 nil,不允许比较
Value of type 'NSError' can never be nil, comparison isn't allowed
我正在通过块 NSError 并收到此错误:
Value of type 'NSError' can never be nil, comparison isn't allowed
这是我从我的组件请求的代码,如果 smth:
应该 return 错误
- (void)findPeripheralForDevice:(Device *)device completion:(void (^)(NSError *error, BOOL needsConfigure))completion;
这是我的组件界面:
func findDeviceWithSerialNumber(serial: String, completion:(error: NSError, needsConfigure: Bool) -> Void)
我的代码是这样的:
wirlessService.findDeviceWithSerialNumber(serial) { (error, needsConfigure) in
if error != nil { // here the error described above occurred
} else {
}
}
那是因为你在完成块中的错误参数不是可选类型。在 swift 中,如果您想检查 nil 值,请将您的参数或变量标记为 Optional.
以上试试这个。
func findDeviceWithSerialNumber(serial: String, completion:(error: NSError?, needsConfigure: Bool) -> Void)
通过添加 ?要么 !对于 属性 或参数,它将成为可选的。你可以检查空值。
我正在通过块 NSError 并收到此错误:
Value of type 'NSError' can never be nil, comparison isn't allowed
这是我从我的组件请求的代码,如果 smth:
应该 return 错误- (void)findPeripheralForDevice:(Device *)device completion:(void (^)(NSError *error, BOOL needsConfigure))completion;
这是我的组件界面:
func findDeviceWithSerialNumber(serial: String, completion:(error: NSError, needsConfigure: Bool) -> Void)
我的代码是这样的:
wirlessService.findDeviceWithSerialNumber(serial) { (error, needsConfigure) in
if error != nil { // here the error described above occurred
} else {
}
}
那是因为你在完成块中的错误参数不是可选类型。在 swift 中,如果您想检查 nil 值,请将您的参数或变量标记为 Optional.
以上试试这个。
func findDeviceWithSerialNumber(serial: String, completion:(error: NSError?, needsConfigure: Bool) -> Void)
通过添加 ?要么 !对于 属性 或参数,它将成为可选的。你可以检查空值。