タグ

2024年9月13日のブックマーク (3件)

  • StateObjectのwrappedValueはイニシャライザのclosure内で初期化した方が良い話 - Qiita

    StateObjectのwrappedValueはclosure内で初期化した方が良い話 SwiftUIで、外部から受け取った値を使ってStateObjectを初期化したい場合、イニシャライザのclosure内で初期化しないと無駄にリソースを使ってしまう可能性がありそうです ObservedObjectとの違いを確認しながら、StateObjectとの挙動を色々確認した備忘録です struct HogeView: View { @StateObject var vm: HogeViewModel init(count: Int) { // StateObjectのイニシャライザのclosure内で初期化する例 _vm = StateObject(wrappedValue: HogeViewModel(count: count)) } // ...... }

    StateObjectのwrappedValueはイニシャライザのclosure内で初期化した方が良い話 - Qiita
  • StateObjectの初期化にはご注意を | anz blog

    @StateObject のものを直接初期化するのは要注意ということを最近体験したのでそのメモ。 詳細 現在 SVVS アーキテクチャをベースに開発をしているのですが、画面を push 遷移してそこからまた呼び出し元に pop で戻るというような挙動をやったときに、閉じた方の画面の ViewState が破棄されないという問題に遭遇したのです。 破棄されないからからなのか、同じ画面を再びひらくと前回閉じるときに行った状態の変更を ViewState が保持したままで利用されるため、求めていない結果になるという。 最初は NavigationLink で開いた場合そういう挙動にでもなるのかな?とか思い onAppear() で都度もろもろをリセットする処理でも入れようかともしたのですが、あまりに面倒くさいですし、なにより「再度開いた」のか「別の画面から戻ってきた」のかっていう切り分けの問題も

  • 普通の人が資産運用で99点をとる方法とその考え方 - hayato

    (2025年12月) 第4部「細かすぎて伝わらない編(仮))」を試験的に公開。現在 GitHub スポンサーの仕組みを利用した限定公開です。 (2025年12月) 書籍版の内容を基に全面的に更新。 (2024年9月) 書籍『普通の人が資産運用で99点をとる方法とその考え方』が日経BPから出版されました。詳しくはこちら。 今後もこの記事の内容は必要に応じてアップデートする予定です。質問等は、GitHub Issues までお願いします。 更新履歴 直接、ここ (Blame の結果)をみてもらうのが一番早いです。以下の更新履歴はおまけ程度です。 [2025-12-17 Wed] 第4部「細かすぎて伝わらない編(仮)」 を仮公開 [2025-12-17 Wed] 書籍版の内容に更新 (Issue #79) [2024-10-23 Wed] 目次を追加。内容は同じ。 [2024-08-01 Thu

    普通の人が資産運用で99点をとる方法とその考え方 - hayato