1.0.5 • Published 6 years ago

react-super-modal v1.0.5

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

React Super Modal npm version Build Status

An opinionated React modals library based on UX patterns and principles.

Install

npm install react-super-modal

or

yarn add react-super-modal

How to use

React Modals is just a component that will render it's children inside a modal.

<Modal isOpen={showModal} onClose={onModalClose}>
  ...
  Modal Content
  ...
</Modal>

Configuration

PropertyDescriptionDefault Value
domElementThe DOM element (not rendered by react) in which the modal is going to render. It can be a string for a query selection, or a dom nodebody
isOpenDefines if the modal is visible or notfalse
maxWidthDefines the max width of the modal for desktop and tables viewports. For mobile it always takes a presetted value640px
showCloseButtonDefines if the close button is visible or nottrue
closeOnOverlayClickDefines if the modal should be closed when clicking outside it.true
closeOnEscapePressDefines if the modal should be closed when escape key is pressed.true
onCloseCallback when the close button is pressedN/A

Examples

Show modal on button click

import React, { Component } from 'react';
import Modal from 'react-super-modal';

class SimpleExample extends Component {
  constructor() {
    super();
    this.state = { modalIsOpen: false };

    this.showModal = this.showModal.bind(this);
    this.hideModal = this.hideModal.bind(this);
  }

  showModal() {
    this.setState({ modalIsOpen: true });
  }

  hideModal() {
    this.setState({ modalIsOpen: false });
  }

  render() {
    return (
      <div>
        <button onClick={this.showModal}>Show Modal</button>
        <Modal isOpen={this.state.modalIsOpen} onClose={this.hideModal}>
          <h1>The content of this modal</h1>
        </Modal>
      </div>
    )
  }
}

export default SimpleExample;

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago