(ok, I fixed this by moving the colorProvider ownership out to the caller.)
struct QuipView: View {
let date: Date
let colors: [Color]
@StateObject var colorProvider = ColorProvider(colors: colors) // <== Cannot use instance member 'colors' within property initializer; property initializers run before 'self' is available
var body: some View {
colorProvider.color
.onChange(of: date) { _ in
colorProvider.advance()
}
}
}
How to fix this?