2016-07-31 62 views
1

我有一个条件赛格瑞设置将执行SEGUE设置方式如下:为什么这个swift代码仍然在执行segue?

override func viewDidAppear(animated: Bool) { 

     if PFUser.currentUser() != nil{ //if the user is logged in previously 


      self.performSegueWithIdentifier("AlreadySignedIn", sender: self) 

      print(PFUser.currentUser()?.username) 


     } 

即使从数据库中删除(解析)的所有用户,仍执行SEGUE。我认为问题不在于这个特定代码的语法,但是有没有人有任何想法可能会导致这种情况?

+0

什么响应'PFUser.currentUser()'呢?另外,[你为什么还在使用Parse](http://blog.parse.com/announcements/moving-on/)? –

+1

Hi @MichaelDautermann parse.com将它们的大部分功能作为开放源码公开,称为parse-server。解析服务器可以部署到任何云提供商,最大的优势是您仍然可以使用相同的应用程序并利用相同的SDK。你可以在这里阅读更多:https://github.com/ParsePlatform/parse-server –

回答

3

PFUser.currentUser()不知道您在数据库中拥有的用户。 当您通过解析ios SDK登录到Parse时。解析IOS SDK将currentUser实例保存在磁盘上,并且当您指定PFUser.currentUser()时,解析IOS SDK将检查用户是否先前已登录(通过检查它是否存储在磁盘上)。如果您希望PFUser.currentUser()将返回零,您必须调用PFUser.logout()函数。此功能将清除当前登录的用户。

相关问题