我在枚举中有一个枚举和映射器函数。映射器函数调用应用程序启动。现在我想再次调用mapper函数,并希望更改枚举的特定情况的值。
enum AuthenticationToken:Int{
case admin
case customer
static let mapper: [AuthenticationToken: String] = [
.admin: "\(appDelegate.adminToken)",
.customer: "\(appDelegate.customerToken)"
]
var string: String {
return "Bearer " + AuthenticationToken.mapper[self]!
}
}
这里我从变量中获取值,如果值已更改,那么我也想更新这些值。
任何帮助将不胜感激
答案 0 :(得分:1)
试试此代码
enum AuthenticationToken:Int{
case admin
case customer
static var mapper: [AuthenticationToken: String] = [
.admin: "\(appDelegate.adminToken)",
.customer: "\(appDelegate.customerToken)"
]
var string: String {
return "Bearer " + AuthenticationToken.mapper[self]!
}
}
调用枚举
AuthenticationToken.mapper = [.admin : "Ahmad",.customer: "ali"]
print(AuthenticationToken.admin.string)
输出
“Bearer Ahmad”