0

在prepare(for segue:)中,我将所选项目的 id:Int 添加到用户默认值中,如下所示

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if let viewController = segue.destination as? ReceiverVC, let project = sender as? Project {
            defaults.set(project.id!, forKey: "currProject")
            viewController.project = project
        }
    }

在我的 ApiRouter 中,我需要访问该值(我认为我需要它作为字符串,因为它是一个 URL 参数)但是我得到了

“无法将'Int'类型的返回表达式转换为返回类型'[String:Any]?'”

使用此代码

let params: ([String: Any]?) = {
            switch self {
            case .getAllProjects:
                return nil
            case .getAllParts:
                return nil
            case .getProjectParts:
                return UserDefaults.standard.integer(forKey: "currProject")
            }
        }()

我不知道捕获所选行并运行回 api 以获取正确记录的另一种方法

4

1 回答 1

0
case .getProjectParts:
  return ["your key":UserDefaults.standard.integer(forKey: "currProject")]
}
于 2020-09-18T04:00:41.197 回答