題目及內容取自於: ChaoCode 頻道
筆記:
> 編碼和解碼介紹
> JSON 介紹
> JSONEncoder 編碼
> JSONDecoder 解碼
> Codable 介紹
> AppStorage 搭配 Codable
> 讓 AppStorage 能儲存 Array
編碼和解碼介紹 -
拿前面的 Userfault 來舉例:
在儲存的過程中,因為 plist 不懂 person 這個類型,所以要轉換成支援的類型
來回轉換的過程就是編碼與解碼
JSON 介紹 -
JSONEncoder 編碼 -
JSONDecoder 解碼 -
Codable 介紹 -
AppStorage 搭配 Codable -
讓 AppStorage 能儲存 Array -
(1) 讓 Food 的 Array 遵循 RawRepresentable
這時候會跳出一個 Error ,説 Food 沒有遵循 Decodable
(2) 把 Food 變成 Codable (Suffix 也要)
(3) 將 rawValue 的內容補上(data轉成 String)
(4) 將 foodList 改成 @AppStorage( Userdefault + State )
微調: 更通用一點
補充: 重置的過程(foodList)