반응형

 

Hacking with Swift 사이트의 강좌 번역본입니다.

 

[원문 : https://www.hackingwithswift.com/quick-start/swiftui/how-to-fix-cannot-assign-to-property-self-is-immutable]

 

How to fix “Cannot assign to property: ‘self’ is immutable”

 

SwiftUI의 뷰는 구조체가 되야 하며, 기본적으로 변경할수가 없다는 것을 의미합니다. 우리가 만든 코드라면 Swift에게 값을 변경할 것이라고 말하기 위해 mutation를 사용해서 메소드를 표시할 수 있지만, SwiftUI에서는 계산된(computed) 프로퍼티를 사용하기 때문에, 그렇게 할 수가 없습니다.

 

프로그램이 실행되는 동안에 프로퍼티의 값을 변경하려는 경우, 다음과 같이 @State를 사용해서 표시해야 합니다:

@State private var runCount = 0

 

참조 타입이나 여러 뷰에서 공유되는 값 처럼, 더 복잡한 프로퍼티의 경우에, 대신 @ObservedObject @EnvironmentObject를 사용해야 합니다.

반응형
Posted by 까칠코더
,