【发布时间】:2017-06-02 00:23:39
【问题描述】:
当我在完成块内尝试为函数参数赋值时出现错误,我收到一个错误,内容为 'escaping closures can only capture inout parameters explicit by value'。
我该如何解决这个问题?非常感谢任何提示!
func fetchCurrentUser(user: inout User? ) {
self.fetchUser(withId: AuthProvider.sharedInstance.currentUserId(), completionHandler: {
fetchedUser in
guard let newUser = fetchedUser else { return }
user = newUser // error Here
})
}
【问题讨论】:
-
您可能还会发现this answer 很有帮助。
-
This solution 展示如何在转义闭包中修改传递引用变量。
标签: swift closures completionhandler inout