2.0.7 • Published 1 month ago

react-clear-modal v2.0.7

Weekly downloads
-
License
MIT
Repository
github
Last release
1 month ago

react-clear-modal

npm version minified + gzip typescript GitHub license

Simple and lightweight, fully controlled isomorphic (with SSR support) modal component for React.js

Table of contents

Installation

npm

npm install react-clear-modal --save

yarn

yarn add react-clear-modal

Usage

Basic Example:

import { useState } from 'react';
import ReactClearModal from 'react-clear-modal';

function ReactClearModalExample() {
  const [isModalOpen, setIsModalOpen] = useState(false);

  const openModal = useCallback(() => {
    setIsModalOpen(true);
  }, []);

  const closeModal =  useCallback(() => {
    setIsModalOpen(false);
  }, []);

  return (
    <div>
      <button type="button" title="Open" onClick={openModal}>Open</button>

      <ReactClearModal
        {/* here you can also pass any other element attributes. */}
        isOpen={isModalOpen}
        onRequestClose={closeModal}
      >
        <div>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Id beatae quia, neque modi libero quidem ipsum architecto, incidunt molestias culpa, totam accusantium reprehenderit animi voluptas magni alias error commodi ut.
        </div>

        <button type="button" title="Close" onClick={closeModal}>Close</button>
      </ReactClearModal>
    </div>
  );
}

export default ReactClearModalExample;

Props

NameTypeDefault ValueDescription
isOpenbooleanfalseIs the modal open
onRequestClosefunctionThe function that will be called to close the modal window when the ESC button is pressed (if disableCloseOnEsc !== true) or an area outside of the content is clicked (if disableCloseOnBgClick !== true)
closeTimeoutnumberTime period in milliseconds after which the modal close function (onRequestClose prop) will be called
preRenderbooleanfalseWhether the modal window and its content must be present in the DOM when the isOpen property is set to false
contentPropsobject{}DOM props (HTMLAttributes) for modal content wrapper div
parentElementstring|HTMLElementdocument.bodyModal Portal container element (HTMLElement) or css selector (string). Ignored if disableRenderInPortal is set to true
disableCloseOnEscbooleanfalsePrevent modal window from closing when ESC key is pressed
disableCloseOnBgClickbooleanfalsePrevent modal from closing after clicking on modal background
disableBodyScrollOnOpenbooleanfalseSet {overflow: hidden} for document.body when modal is open
disableRenderInPortalbooleanfalsePrevent render modal in portal (if true it will be rendered directly inside parent component)
...object{}DOM props (HTMLAttributes) for modal container div

Demo

Edit react-clear-modal

2.0.7

1 month ago

2.0.6

2 months ago

2.0.5

4 months ago

2.0.4

5 months ago

2.0.3

7 months ago

2.0.2

10 months ago

2.0.1

11 months ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

2.0.0

12 months ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

2 years ago

0.1.0

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago