UIでView構造体の中で定義したプロパティをbody内で変更できるようにしたい時などに使用する「@State」の使い方やメリットをまとめていきたいと思います。Wrapper(プロパティラッパ)」の1つです。プロパティラッパの特徴はプロパティに対する操作や処理をカプセル化して定義することでキーワードを追加するだけで任意の動作や挙動を行わせることができるデータ構造です。@XXXX形式で自分で定義することも可能です。定義する際は「@propertywrapper」を定義前に記述します。定義済みである@Stateの特徴は指定したプロパティの値の更新を監視してくれることです。これにより構造体のプロパティをその構造体の内部から更新できるようになったり、更新されたプロパティが都度再評価されView(表示)も更新してくれます。Wrapper(プロパティラッパ)」には他にも子の構造体から親の構造体のプロパティを変更できるようにする@Bindingやクラス(オブジェクト)を観測できる@ObservedObjectなどが用意されています。使い方@Stateの使い方は簡単で構造体の中に定義しているプロパティ宣言に@Stateを付与するだけです。これにより指定したプロパティを監視してくれるようになります。}}構造体のプロパティを変更する:mutatingそもそも構造体の中に定義したプロパティはそのままでは内部から変更することができません。以下のようにCharacter構造体のhitPointプロパティの値を変更しようとするとエラーが発生してしまいます。ミューテーション演算子の左側は可変ではありません:'self'は不可変ですこれを防ぐためには@Stateをプロパティに付与する(SwiftUIのみ)またはdamage関数にmutatingを付与します。これによりプロパティの値を変更することができるようなります。13対応まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。ご覧いただきありがとうございました。友達や家族の誕生日を登録しておくと当日に通知が届きお知らせしてくれるiOSアプリです。貸し借り管理アプリお金の貸し借りを管理するためのアプリです。貸借の色が分かれているので識別しやすく、使いやすさを求めてできるだけシンプルなUIにしています。カシホン人に貸すことが多く、誰に貸したか忘れがちな本の貸し借りを記録できるアプリです。