SwiftUI - Swift Data 자동 저장 기능

준우·2024년 4월 22일
0

SwiftUI 이야기

목록 보기
5/5
post-thumbnail
post-custom-banner

현재 Swift Data 를 사용한 앱을 제작 중 이상한 부분을 알게 되었다.
이상하게 생각했던 부분은 버튼을 클릭하면 현재 일의 완료 처리를 하는 부분이다.

Data 의 isCompleted 값을 toggle() 시켜 true로 만든 다음, 앱을 종료시켰다.
그리고 다시 실행을 했을 때 그 Data의 isCompleted 값은 false가 되어야 하는데, true 가 되어 있었던 것이다.

급히 난 해당 부분을 확인해봤으나, 그 toggle 값을 변경 후, Swift Data 에 저장하는 로직은 만들지 않았었다.

그래서 한동안 이 부분이 오류가 아닌가 확인을 해 보았지만, 오류가 아니었다는 사실을 테스트를 통해서 알게 되었다.(시뮬레이션 버그도 아님)

인터넷에 Swift Data AutoSave? 라는 키워드를 검색한 결과, Swift Data 는 기본적으로 isAutoSaveEnabled 가 true 로 되어 있으며, AutoSave 기능은 Swift Data 의 모델이 변경될 때마다 자동으로 저장이 된다고 한다.
물론, 이 기능을 끄고 싶다면, false 로 바꿔주기만 하면 된다.

예시)

WindowGroup {
	ContentView()
}
.modelContainer(for: Example.self, isAutosaveEnabled: false) // True: Autosave On | False: Autosave Off 

참고 사이트: https://www.hackingwithswift.com/quick-start/swiftdata/how-to-enable-or-disable-autosave-for-a-modelcontext

post-custom-banner

0개의 댓글