Mercurial > public > geoquiz
annotate GeoQuiz/Logic/UserClass.swift @ 14:136928bae534
add user profile
author | Dennis C. M. <dennis@denniscm.com> |
---|---|
date | Wed, 19 Oct 2022 07:56:33 +0200 |
parents | a793f33f05fb |
children |
rev | line source |
---|---|
9 | 1 // |
10
a793f33f05fb
refactor code and fix layout
Dennis C. M. <dennis@denniscm.com>
parents:
9
diff
changeset
|
2 // UserClass.swift |
9 | 3 // GeoQuiz |
4 // | |
5 // Created by Dennis Concepción Martín on 7/10/22. | |
6 // | |
7 | |
8 import Foundation | |
9 | |
10 class User: ObservableObject { | |
14 | 11 @Published var data = UserData() { |
9 | 12 didSet { |
14 | 13 if let userDataEncoded = try? JSONEncoder().encode(data) { |
14 UserDefaults.standard.set(userDataEncoded, forKey: "UserData") | |
9 | 15 } |
16 } | |
17 } | |
14 | 18 |
9 | 19 init() { |
14 | 20 if let userData = UserDefaults.standard.data(forKey: "UserData") { |
21 if let decodedUserData = try? JSONDecoder().decode(UserData.self, from: userData) { | |
22 data = decodedUserData | |
9 | 23 } |
24 } | |
25 } | |
26 } |