我想设置一个条件segue(在Swift/Xcode中,带有Heroku托管的分析服务器框架),只有当前用户没有注销时才会执行。如果用户没有注销,它可以正常工作。但是,即使用户注销,segue仍会运行。这是一个基本的代码设置。Swift/Xcode:为什么PFUser.currentuser()不会返回零如果注销?
我拨打的用户通过注销:
PFUser.logoutinbackground()
然而,SEGUE:
If PFUser.currentuser() != nil {
//perform segue
}
仍然将执行SEGUE。将PFUser.currentuser()打印到日志不会返回nil。如果我重写条件SEGUE代码如下:
If PFUser.currentuser()?.username != nil {
//perform segue
}
这工作适当,返回PFUse.currentuser()?用户名日志不会返回零。有没有什么特别的错误让它像这样(即会导致任何问题?)。另外,为什么它不会返回为零的第一版segue代码?这是否与我称为PFUser.loginoutinbackground()而不是PFUser.logout()(后者导致应用程序因某种原因崩溃)相关?
应用程序使用此命令在我关闭(PFUser.logOut())。你有什么想法,为什么这可能是这种情况?不知道为什么它有麻烦。 –
有没有错误 –
是的。但是我现在不在我的电脑中,它包含了该应用程序。我会尽快发布。感谢您的帮助 –