This is untested and probably has problems, but this approximates what I meant: import SwiftData import SwiftUI struct ReadingViewModifier: ViewModifier { @Query private var books: [Book] @State private var manager: ReadingManager func body(content: Content) -> some View { content .environment(.readingManager, manager) .onChange(of: books) { manager.receive(books: books) } } } Inside another component, you can read the manager with: @Environment(.readingManager) private var manger: ReadingManager
Topic:
App & System Services
SubTopic:
iCloud & Data
Tags: