我有Firebase项目,包含3个viewcontrollers(main,feed,profile)。我制作了3个结构(Post,User和Product,后者无关紧要)。我使用Singleton来存储配置文件值。但问题是当我尝试使用单例值将值设置到Firebase时,如果我没有转到配置文件视图并让它们加载,它会将这些值设置为空字符串。
那么问题是,我如何将这些值存储到用户默认值中?因此,如果我进入viewcontroller,我不应该查询所有这些值。
这是我的User
单身迷你版:
class CurrentUser: NSObject
{
var generalDetails: User = User()
static let sharedInstance = CurrentUser()
fileprivate override init(){
super.init()
}
}
struct User {
var userName: String,profileImageURL: String
init()
{
userName = ""
profileImageURL = ""
}
init(userName: String,profileImageURL: String){
self.userName = userName
self.profileImageURL = profileImageURL
}
}
像这样我使用这些值:
let currentUser: CurrentUser = CurrentUser.sharedInstance
currentUser.generalDetails. ...(e.g userName)