[発散メモ] SwiftUIのViewは実はViewModelなのでは?
💭

[発散メモ] SwiftUIのViewは実はViewModelなのでは?

💡

次の記事からの追記

がーっと悩んで、やはりインスパイア元の考え方の理解を深めようとVuejsを見に行った。

理解していたつもりになっていたcomputed

Vuexについているものかと思ったが、そうではなかった。

そして、componentごとにVueインスタンスを作るようだが、その名前がvm(ViewModel)

こちらの記事でVueでのコンポーネントの書き方の基本をSwiftUIに写してみる。

なるほどー、

つまりこれって、SwiftUIのViewってViewModelじゃない?

@StateonAppearonDisappearの活用をもっと考えればViewModelのような振る舞いをViewインスタンスだけで可能になりそうな気がする。

🛵

実験中...

そこそこ思った通りで、表示している間だけ保持したいものは @State に入れておけばcomponentのinitは呼ばれるけど、Stateの中身は前回のものが引き継がれている。

ので、UIKit時代に画面のライフサイクルに応じて作っていたViewModelはSwiftUIではViewということにできるかな?

何かヒントを得られた気がする。