Ich versuche, ein Benutzer-Singleton zu erstellen, das bei jeder Anmeldung oder Registrierung des Benutzers mit Benutzernamen, E-Mail-Adresse und Benutzer-ID initialisiert wird.Übergeben von Argumenten zum Initialisieren eines Singleton
Ich habe so etwas wie dies geht, aber ich bin nicht sicher, was mit dem static let sharedInstance
zu tun:
class UserSingle {
var userName: String
var email: String
var userID: Int
static let sharedInstance = UserSingle()
private init(userName: String, email: String, userID: Int){
self.userName = userName
self.email = email
self.userID = userID
}
}
Ich möchte die Werte aus dem Wörterbuch unter verwenden, zu verwenden, da die Parameter der initialisieren Singleton.
userInfo = ["username": "fake name", "email": "fake email", "userID": 1]
Ab jetzt bin ich für sharedInstance
einen Fehler bekommen, weil seine UserSingle()
ohne die notwendigen Argumente für die initializer aufrufen. Wie komme ich dazu, da ich noch keine Benutzerdaten habe?
Wo möchten Sie die Instanz tatsächlich erstellen und wie möchten Sie diesen Benutzer als aktuellen Benutzer (anstatt nur einen Benutzer) festlegen? – Wain
@Wain, sobald das Wörterbuch vom Login-Prozess zurückgegeben wird, wenn ich den Benutzer Singleton erstellen möchte. Ich erstelle nicht mehrere Benutzer Singletons - Nur eine für den aktuellen Benutzer und das ist es. – Brosef