web-dev-qa-db-fra.com

SWIFTUI: Qu'est-ce que le wrapper de la propriété @appsstorage

J'avais l'habitude de sauvegarder des données d'application importantes telles que les informations d'identification de connexion à UserDefault à l'aide de l'instruction suivante:

UserDefaults.standard.set("[email protected]", forKey: "emailAddress")

Maintenant, je suis venu à connaître Swiftui a introduit une nouvelle emballage de propriété appelée:

@Appsstorage

Quelqu'un pourrait-il s'il vous plaît expliquer comment fonctionne la nouvelle fonctionnalité?

13
Shawkath Srijon

Nous pouvons tester cela via une approche simple:

struct Content: View {
    
    private enum Keys {
    
        static let numberOne = "myKey"
    }
    
    @AppStorage(Keys.numberOne) var keyValue2: String = "no value"

    var body: some View {
        VStack {
            Button {
                keyValue2 = "Hello"
                print(
                    UserDefaults.standard.value(forKey: Keys.numberOne) as! String
                )
            } label: {
                Text("Update")
            }
            
            Text(keyValue2)
        }
        .padding()
        .frame(width: 100)
    }
}
0
hbk