0.1.1 • Published 6 years ago

react-create-side-effect v0.1.1

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

react-create-side-effect

Declarative side effects!

Install

yarn add react-create-side-effect react

ReactCreateSideEffect

ReactCreateSideEffect~createSideEffect(fn) ⇒ ReactComponent

Creates a component that executes a side effect when component mounts. Return a function to handle any clean up when the component unmounts.

Kind: inner method of ReactCreateSideEffect

ParamType
fnfunction

Example

import React from "react";
import ReactDOM from "react-dom";
import { createSideEffect } from "react-create-side-effect";

const LocationRedirect = createSideEffect(props => {
  window.location.replace(props.to);
});

ReactDOM.render(
  <LocationRedirect to="/login" />,
  document.getElementById("root")
);

Example (cleaning up)

import React from "react";
import ReactDOM from "react-dom";
import { createSideEffect } from "react-create-side-effect";

const Body = createSideEffect(props => {
  document.body.classList.add(props.className);
  return () => document.body.classList.remove(props.className);
});

ReactDOM.render(<Body className="mounted" />, document.getElementById("root"));