What if we can track the workout history? When did we last exercise? Did we complete it? How much time did we spend?
Tracing workout history requires us to track workout progress. Somehow, we need to track when the workout starts and stops. This tracking data then needs to be persisted somewhere.
One way to implement this history tracking is to extend our WorkoutController
function with the desired functionality. This approach is less than ideal, and we have already seen how to make use of another controller (such as WorkoutAudioController
) and delegate all the related features to it.
In this case, historical data tracking does not require a controller, so instead we will be using a service to track historical data and share it across all app controllers. Before we start our journey of implementing the workout tracking service, let's learn a bit more about AngularJS services.