Moya任务中的可选参数

时间:2019-06-10 17:35:38

标签: ios swift moya

我正在使用Moya,并且遇到不需要向端点发送请求的某些参数的情况,因此目标看起来像这样:

case save(projectId: Int?, seconds: Int, description: String?)

当前Moya的requestParameters(parameters:encoding:)方法期望使用[String:Any]类型的字典。

此方案是否有解决方法?提前致谢。

1 个答案:

答案 0 :(得分:2)

Tigran jan if-let ov stugi ete nil chi,也不qic dict-i mej。

switch self {
case .save(projectId: let projectId, seconds: let seconds, description: let description): 
    var params: [String:Any] = ["seconds" : seconds] 
    if let projectId = projectId 
        params["projectId"] = projectId
    } 

    if let description = description {
        params["description"] = description
    }
    return .requestParameters(parameters: params, encoding: JSONEncoding.default)
}