?在SwiftUI中蚕断,當(dāng)有輕量級數(shù)據(jù)需要持久化時(shí),我們可以使用SceneStorage和AppStorage來做存儲(chǔ)刁愿。
SceneStorage是一個(gè)屬性綁定器,它可以存在于每一個(gè)scene中乒验。它只在Views中能被獲取到幅虑。
根據(jù)下圖例子,我們使用SceneStorage需要聲明一個(gè)唯一的key來代表要存的數(shù)據(jù)葛假,然后我們可以像使用State一樣來使用這個(gè)對象,SwiftUI會(huì)自動(dòng)幫我們存儲(chǔ)和恢復(fù)這個(gè)對象。
AppStorage是一個(gè)全局的存儲(chǔ)旭咽,它是使用UserDefaults來做持久化的,所以我們可以在app中任何地方獲取使用它赌厅。它也是用于輕量級存儲(chǔ)穷绵,例如app的設(shè)置信息。
?根據(jù)下圖例子特愿,AppStorage也是需要聲明一個(gè)唯一的key來代表要存的數(shù)據(jù)仲墨。它像其他的屬性綁定器一樣,可以獲取它的binding來使用揍障。