RFC: Making *Locations full-fledged Action Creators #325
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.
As discussed in #252, I would like to be able to differentiate between user- and browser-initiated events.
This allows us to avoid trying to restore scroll position when user clicks on links.
@mjackson and I thought that perhaps turning
*Location
objects into full-fledged action creators helps achieve that goal.Current path state would move into
PathStore
which becomes less sophisticated.In this pull request, I'd like to ask @mjackson and @rpflorence to comment on whether we proceed with this approach, seeing how I changed
HistoryLocation
andPathStore
. (Scrolling is not implemented here, but this PR is pre-requisite for implementing proper scrolling anyway.)This approach is more in line with Flux:
The downsides (?):
Locations
now need to know aboutLocationDispatcher
,ActionTypes
andPayloadSources
HistoryLocation
will be duplicated in allLocations
, they get more fatI don't think these problems are that bad, but I'd like a few opinions before going ahead with this.
Thanks!