Ultimately you do need to use a data structure that provides you with collections of identifiable elements. If you're down the path of using a custom data type, for example ExpModel, you'll a IndexedIdentifierCollection. And using an Array in the view body has its performance issues because every time the body is evaluated a whole new array is being allocated. I recommend you review Demystify SwiftUI performance - WWDC23 - Videos - Apple Developer. It covers this topics.
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: