Reselect Utils
Edit page
IntroductionMotivationPrinciplesQuick Start
Guides
Graphs
API

Introduction

Motivation

Such projects as Reselect and Re-reselect try to solve the task of memoization. But there is no standard solutions for some applied problems. This library was created to try to systematically solve the following problems:

  • Work with optional objects as a source for selection.
  • Binding parametric selectors to specific property values.
  • Adaptation of parametric selectors to the new parameter interface (useful for creating parametric structured selectors).
  • Using selection results as parameters for a new selection.
  • Calculating an aggregate value from a collection of selector results.
  • Structuring of selection results (more proper typed version of structured selector and cached structured selector).
  • Implementation of key selectors composition (useful for key selector creator usages).

Principles

Dev Tool Integration

All utility selectors should be displayed in dev tools adequately. This is necessary to understand how the selector is related.

Dependency Support

All selectors must describe their dependencies correctly.

TypeScript Support

This library is written in TypeScript and initially focused on static type checking. All utility selectors are typed and tested at compile time.