Swift: Ne peut pas attribuer à immuable expression du type " AnyObject?!'
J'ai cherché, mais je n'ai pas trouvé un familier de la réponse, donc...
Je suis sur le programme d'une classe permettant de gérer analyser des méthodes telles que la mise à jour, ajout, la récupération et la suppression.
func updateParse(className:String, whereKey:String, equalTo:String, updateData:Dictionary<String, String>) {
let query = PFQuery(className: className)
query.whereKey(whereKey, equalTo: equalTo)
query.findObjectsInBackgroundWithBlock {(objects, error) -> Void in
if error == nil {
//this will always have one single object
for user in objects! {
//user.count would be always 1
for (key, value) in updateData {
user[key] = value //Cannot assign to immutable expression of type 'AnyObject?!'
}
user.saveInBackground()
}
} else {
print("Fehler beim Update der Klasse \(className) where \(whereKey) = \(equalTo)")
}
}
}
Que je suis sur le point d'apprendre swift pour le moment, j'aimerais obtenir une réponse avec un peu de déclaration, de sorte que je voudrais en savoir un peu plus.
btw: j'ai plus tard à cette méthode comme ceci:
parseAdd.updateParse("UserProfile", whereKey: "username", equalTo: "Phil", updateData: ["vorname":self.vornameTextField!.text!,"nachname":self.nachnameTextField!.text!,"telefonnummer":self.telefonnummerTextField!.text!])
OriginalL'auteur PhilHarmonie | 2015-08-19
Vous devez vous connecter pour publier un commentaire.
Le message d'erreur dit, vous êtes en essayant de modifier un objet immuable, ce qui n'est pas possible.
Des objets déclarés en tant que méthode, les paramètres ou les valeurs de retour dans les fermetures sont immuables par défaut.
Faire l'objet mutable ajouter le mot-clé
var
dans la déclaration de méthode ou d'ajouter une ligne pour créer un objet mutable.Aussi index des variables en répétez les boucles sont immuables par défaut.
Dans ce cas, une ligne est insérée à créer une mutable copie et l'indice de la variable est déclarée comme mutables.
Être prudent pour modifier des objets énumérés, ce qui pourrait provoquer un comportement inattendu
Il affecte également la variable d'index dans le répéter en boucle. J'ai modifié le post
OriginalL'auteur vadian
Dans swift a beaucoup de types sont définis comme
struct
s, qui sont immuables par défaut.J'ai eu le même message d'erreur :
et dans une autre catégorie :
pour être sûr d'avoir
lors de la réalisation de la coulée
Cela a été modifiée, il est recommandé d'utiliser
protocol MyProtocol: AnyObject {
au lieuOriginalL'auteur ZpaceZombor