Avatar
List { ForEach(0..<timeline.tweets.count) { i in TweetView($timeline.tweets[i]) } }List { ForEach(0..<timeline.tweets.count) { i in TweetView( .init( get: { timeline.tweets[i] }, set: { timeline.tweets[i] = $0 } ) ) } } みたいな形をよく使いますが、前者は onDeletetimeline.tweets の要素を削除したときなど条件によっては Index out of range を引き起こしたり、後者は NavigationLink を使った画面遷移を壊したり (親ビュー側が再描画されることにより) するので微妙だったんですよね。koher さんのは良さそうな? (edited)