fix(predictions): only fetch predictions for a train when user opens the train opover #203
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
Currently, we fetch departure predictions for every train every time the page is loaded. This is making the NTT slow, and leading to our hitting V3 API limits.
Changes
Only call the prediction API when the user opens the popover for a train
Another way to do this might be to call for predictions on a per-line basis, store them in the
useMbtaApi
hook, and then match them up with vehicles. However, this would mean the predictions only get updated whenever the train positions are updated.Testing Instructions
Run the app locally and verify that the prediction API is not called until you open the pop-over for a vehicle.