Adds memoize option, defaulting to no memoization #180
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.
So ultimate goal of #179 was to be able to add a layer of memoization on the selector - this PR does just that, if there is a function provided as a
memoize
option, the selector is passed through that function at instantiation and attached to the component instance. Ifmemoize
option is not providedthe default is identitythe function is attached directly to the component.I moved a bit of the construction of the class to
componentWillMount
so we have a method to call incomponentWillUpdate
to re-attach the functions on hot reloading.