Socket
Socket
Sign inDemoInstall

reselect-equality-check-n-parameters

Package Overview
Dependencies
1
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    reselect-equality-check-n-parameters

Only run the equality check on the first [n] arguments when using reselect


Version published
Weekly downloads
150
increased by4.9%
Maintainers
1
Install size
19.7 kB
Created
Weekly downloads
 

Readme

Source

reselect-equality-check-n-parameters

A simple memoize factory function that only checks equality on the first n parameters

To be used as an extension to the reselect library.

Install:

npm install reselect-equality-check-n-parameters --save

Example:

    import { createSelectorCreator } from 'reselect';
    import { equalityCheckNParamsCreator } from 'reselect-equality-check-n-parameters';
    
    // This creates a memoize function that will only check the first parameter
    const equalityCheckFirstParam = equalityCheckNParamsCreator(1);

    // Import createSelectorCreator from the reselect library passing it the memoize function
    const createSelectorFirstParam = createSelectorCreator(equalityCheckFirstParam);

    const selector = createSelectorFirstParam(
        state => state.a,
        state => state.b,
        (a, b) => a + b
    );

    const state1 = {a: 1, b: 2};
    selector(state1); // would be 3
    
    // "b" will not be checked for equality
    // even if it has changed, no new value will be calculated
    const state2 = {a: 1, b: 4};
    selector(state2) // would be 3
    selector.recomputations() // would be 1
    
    const state3 = {a: 2, b: 4};
    selector(state3) // would be 6 as "a" has changed

NPM tasks

  • npm test runs the tests via karma
  • npm build builds a UMD version for distribution with webpack
  • npm pre-publish used when publishing to NPM

Publishing checklist

  1. Run tests npm test
  2. Run build and check that your module was built (needs to be exported via index.ts to index.js)
  3. Install it into your project to test before publishing by running npm install '/path-to-this/'
  4. Bump version in package.json following Semantic Versioning SemVer
  5. Tag the release commit in git: git tag -a v0.1.5 -m "Published v0.1.5"
  6. Push the tags up to github: git push origin --tags
  7. Publish npm publish

FAQs

Last updated on 06 Oct 2017

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc