Add a SwiftUI modifier for easily tracking navigation between views #199
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.
Most flexible "core" solution for #184.
Note that I considered but decided against the following names:
.navigationPathChanged(to:)
while being consistent with the extension function onTelemetryDeck
, it's very uncommon for SwiftUI modifiers to state something like "changed" when nothing in the view hierarchy actually changed..onNavigationPathChange()
would be more SwiftUI-like, but how to pass thepath
in a natural wording? Doesn't seem perfect either..reportNavigation(path:)
seemed a good, but I likedtrack
better because it's more commonly associated with Analytics..signalNavigation(path:)
is consistent with thesignal
method, but while I findTelemetryDeck.signal
clear thanks to theTelemetryDeck
context, in a SwiftUI view it seems a bit unclear.For these reasons, I decided for
trackNavigation(path:)
which is clear and short and consistent with SwiftUI-naming.