无法将类型"PFUser?"的值转换为类型"[NSObject:AnyObject]



我不知道如何将PFUser转换为[NSObject : AnyObject],如果我没有弄错的话,我认为它是NSDictionary

这是我正在使用的代码,但我在最后一行遇到了错误。我对斯威夫特还很陌生,所以还在努力弄清楚这些打字的东西。

@IBAction func joinLobby(sender: AnyObject) {
    if let currentUser = PFUser.currentUser() {
        let channel = currentUser["language"] as! String
        self.appDelegate.client?.unsubscribeFromPresenceChannels([channel])
        self.appDelegate.client?.subscribeToChannels([channel], withPresence: true, clientState: PFUser.currentUser() as [NSObject : AnyObject])
    }
}

错误:"无法转换"PFUser类型的值?"键入"[NSObject:AnyObject]"

我认为这个错误是不言自明的。没有办法将PFUser对象隐式转换为字典。您需要根据从当前用户对象中提取的信息构建自己的字典,并将其作为subscribeToChannels函数的最后一个参数发送。

另请参阅:在Swift中将PFObject(Parse)转换为JSON?

最新更新