2016-05-22 25 views
0

我在swift 2.0中使用枚舉向用戶返回一些錯誤消息,並使用CustomStringConvertible協議。如何解決swift 2.0中的CustomStringConvertible錯誤?

這是我的代碼有:

enum Error: ErrorType { 
    case EmptyField 
    case PasswordDoNotMatch 
    case InvalidEmail 
    case UserCardIDTaken 
    case IncorrectSignIn 
    case InvalidPassword 
} 

extension Error: CustomStringConvertible{ 
    var decription : String { 
     switch self{ 
     case .EmptyField: return "Porfavor llene todos los campos" 
     case .PasswordDoNotMatch: return "La contraseña no coincide" 
     case .InvalidEmail: return "Porfavor entre un email valido" 
     case .UserCardIDTaken: return "La Cedula ya existe" 
     case .IncorrectSignIn: return "Email o Contraseña son incorrectos" 
     case .InvalidPassword: return "Las contraseñas no coinciden" 
     } 
    } 
} 

,我得到了如下錯誤:「類型‘錯誤’不符合協議CustomStringConvertible」

我想知道這是爲什麼hapens。

+2

錯字:德計劃** S ** cription – vadian

+0

aaashh !!感謝@vadian –

回答

0

CustomStringConvertible協議需要一個名爲description的可獲取變量,但您的聲明是錯誤的。

假設你要聲明一個變量計算你應該做

extension Error: CustomStringConvertible{ 
    var description : String { 
     get { 
      switch self { 
      case .EmptyField: return "Porfavor llene todos los campos" 
      case .PasswordDoNotMatch: return "La contraseña no coincide" 
      case .InvalidEmail: return "Porfavor entre un email valido" 
      case .UserCardIDTaken: return "La Cedula ya existe" 
      case .IncorrectSignIn: return "Email o Contraseña son incorrectos" 
      case .InvalidPassword: return "Las contraseñas no coinciden" 
      } 
     } 
    } 
} 
+1

你不需要嵌套'GET'因爲它是計算屬性的可選項。 – Skyboat

+0

不知道,謝謝你的提示 –

相關問題