У меня есть следующий таймер:
struct ContentView: View {
@State var timeRemaining = 10
let timer = Timer.publish(every: 1, on: .main, in: .common).autoconnect()
var body: some View {
NavigationView{
VStack {
if(self.timeRemaining > 0) {
Text("\(timeRemaining)")
.onReceive(timer) { _ in
if self.timeRemaining > 0 {
self.timeRemaining -= 1
}
}
} else {
Text("Time is up!")
}
}
}
}
}
Если я удаляю представление NavigationView
, таймер обновляется и работает, но так не работает, что здесь происходит и как я могу обновить это пока в NavigationView
? Или есть лучшая практика?
Спасибо