New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

reoption

Package Overview
Dependencies
Maintainers
1
Versions
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

reoption

Declarative Option monad for React

latest
Source
npmnpm
Version
0.0.1
Version published
Maintainers
1
Created
Source

Reoption

GitHub license npm version

npm install reoption

Show me

Given a function that should find resource and return numeric id. If no results found it should return null or undefined.

findId: () => number;

Let's print results in JSX as usual:

{ findId() && <p>The id is "{findId()}"</p> }
{ !findId() && <p>Not found</p> }

This solution is extrmely popular in React world, but here is a list of problems:

  • Result 0 will be interpreted as false. It can be solved by adding more logic around, ending up with helper methods.

  • Extra calls of the findId() method. Can be solved by caching the returned value. That mean just adding one more variable.

  • Looks hucky from the very beginning. This is something personal :)

  • NOT a reusable code snippet mostly because of related helper functions from point #1 and cache #2.

With Match from reoption the same code will look cleaner and smarter. Check it out!

import { Match } from 'reoption';
<Match 
    option={findId}
    some={(id: number) => <p>The id is "{id}"</p>}
    none={<p>Not found</p>}
/>

FAQs

Package last updated on 18 Jun 2018

Did you know?

Socket

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