If you have @StateObject var items: ItemModel = .init() in your ContentView,
you should pass this model to the other views, for example @ObservedObject var items: ItemModel
in your ItemView.
Also you should have in your Observable class, items.append(Item(id: id, category: [category], image: image))
not Piercing(...).
Currently you create a new and different ItemModel every time you show ItemView
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: