Я пытаюсь создать список избранного, в который я могу добавлять различные элементы, но это не работает. Я сделал простой код, чтобы показать вам, что происходит.
// BookData gets data from Json
struct BookData: Codable {
var titolo: String
var descrizione: String
}
class FavoriteItems: ObservableObject {
@Published var favItems: [String] = []
}
struct ContentView: View {
@ObservedObject var bookData = BookDataLoader()
@ObservedObject var favoriteItems = FavoriteItems()
var body: some View {
NavigationView {
List {
NavigationLink(destination: FavoriteView()) {
Text("Go to favorites")
}
ForEach(0 ..< bookData.booksData.count) { num in
HStack {
Text("\(self.bookData.booksData[num].titolo)")
Button(action: {
self.favoriteItems.favItems.append(self.bookData.booksData[num].titolo)
}) {
Image(systemName: "heart")
}
}
}
}
}
}
}
struct FavoriteView: View {
@ObservedObject var favoriteItems = FavoriteItems()
var body: some View {
List {
ForEach (0 ..< favoriteItems.favItems.count) { num in
Text("\(self.favoriteItems.favItems[num])")
}
}
}
}
Когда я запускаю приложение, я могу go перейти в избранное, но после добавления элемента я не могу. Моя цель - добавить элемент в избранное и иметь возможность сохранить его после закрытия приложения