Swift枚举关联值
我有一个API,它后面有路径和一个int 例如,Swift枚举关联值,swift,enums,Swift,Enums,我有一个API,它后面有路径和一个int 例如,/get/news/{id}。 对于路径端点,我有如下枚举: enum Endpoints : String { case news = "news" } 是否有任何方便的方法来使用关联的值 比如: case newsById(id: String) = "get/news/" + id 始终可以向枚举添加函数以获取URI: enum Endpoints : String { case news = "news" func
/get/news/{id}。
对于路径端点,我有如下枚举:
enum Endpoints : String {
case news = "news"
}
是否有任何方便的方法来使用关联的值
比如:
case newsById(id: String) = "get/news/" + id
始终可以向枚举添加函数以获取URI:
enum Endpoints : String {
case news = "news"
func getUri(id: string) -> String {
return "get/\(self.rawValue)/\(id)"
}
}
你可以试试这个:
enum Endpoints: String {
case news
func getNewsByStringId() -> String {
return "get/news/\(self.rawValue)"
}
}
您可以使用以下选项:
enum APIEndpoints {
case news(id: Int)
var path: String {
switch self {
case let .news(id):
return "/get/news/\(id)"
}
}
}
并像这样使用:apidendpoints.news(id:5.path)