https://www.hackingwithswift.com/100/swiftui/34
100 Days of SwiftUI – Day 34 – Hacking with Swift
Link copied to your pasteboard.
www.hackingwithswift.com
Wrap up 입니다. 문제를 풀고 추가 과제를 진행하는데 약간 이상한 상황을 만났습니다. 커스텀뷰를 하나 만들어서 사용했는데, 커스텀뷰에 넘겨주는 스테이트가 분명히 변경이 되었음에도 불구하고 업데이트가 제대로 되지 않는 상황이었습니다. 추정해보건데, 사용하는 View의 @State 프로퍼티가 변경되면 해당 View의 body 프로퍼티가 다시 호출되는 것을 보장하지만, body 내에서 사용된 커스텀 뷰의 body 프로퍼티 호출을 보장하지는 않는 것 같습니다. 당황스럽게도 커스텀뷰의 프로퍼티에서 @State를 제거하니 매번 새로 커스텀뷰를 생성하는 것으로 보이는데요. @State는 해당 프로퍼티가 변경될 때마다 body 프로퍼티를 다시 리턴하는 것 뿐 아니라, @State가 변경되지 않으면 설사 새로운 객체가 생성된 경우라 하더라도 화면을 업데이트하지 않는 게 아닌가 생각됩니다. 놀라워요.
https://forums.developer.apple.com/thread/123920
Why is my child SwiftUI view not updating? |Apple Developer Forums
Your Button, defined inside ContentView, is only changing the content of the property within the ContentView. You've passed a copy of that to ChildView, so it has a separate value, stored elsewhere in memory. Thus changing ContentView.msg won't alter the v
forums.developer.apple.com
https://github.com/utrpanic/today-what-else/commit/21c9cd11f0543e2996f20f4ad9e12b42122dadad
Day 36. Project 7, part 1 (0) | 2020.03.22 |
---|---|
Day 35. Milestone: Projects 4-6 (0) | 2020.03.21 |
Day 33. Project 6, part 2 (0) | 2020.03.19 |
Day 32. Project 6, part 1 (0) | 2020.03.17 |
Day 31. Project 5, part 3 (0) | 2020.03.16 |
댓글 영역