-
Notifications
You must be signed in to change notification settings - Fork 54
Open
Description
Feature Request
Similar to reselect, would be nice to compose selectors with other selectors, that way the business logic can be abstracted and isolated to the selector.
Example
// basic example: state.user.avatar.src
const user = createSelector(state => state.user);
const userAvatar = createSelector(user, userState => userState.avatar);
const userAvatarSrc = createSelector(userAvatar, userAvatarState => userAvatarState.src);
// advanced example: state.user.avatar.src || state.config.defaultAvatar
const config = createSelector(state => state.config);
const defaultAvatarSrc = createSelector(config, configState => configState.defaultAvatar);
const avatar = createSelector(
userAvatarSrc,
defaultAvatarSrc,
(userAvatarSrcState, defaultAvatarSrcState) => (
userAvatarSrcState || defaultAvatarSrcState
)
);Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels