Discussion Frontend Javascript React.js

Introduction about Rodal

A React modal with animations.

http://chenjiahan.github.io/rodal/

Installation

React 15/16

npm i rodal --save

React 0.14

npm i rodal@1.2.10 --save

Usage

import React from 'react';
import Rodal from 'rodal';
 
// include styles
import 'rodal/lib/rodal.css';
 
class App extends React.Component {
 
    constructor(props) {
        super(props);
        this.state = { visible: false };
    }
 
    show() {
        this.setState({ visible: true });
    }
 
    hide() {
        this.setState({ visible: false });
    }
 
    render() {
        return (
            <div>
                <button onClick={this.show.bind(this)}>show</button>
 
                <Rodal visible={this.state.visible} onClose={this.hide.bind(this)}>
                    <div>Content</div>
                </Rodal>
            </div>
        )
    }
}

Props

PropertyTypeDefaultDescription
widthnumber400width of dialog
heightnumber240height of dialog
measurestringpxmeasure of width and height
onClosefunc/handler called onClose of modal
onAnimationEndfunc/handler called onEnd of animation
visibleboolfalsewhether to show dialog
showMaskbooltruewhether to show mask
closeOnEscboolfalsewhether close dialog when esc pressed
closeMaskOnClickbooltruewhether close dialog when mask clicked
showCloseButtonbooltruewhether to show close button
animationstringzoomanimation type
enterAnimationstring/enter animation type (higher order than ‘animation’)
leaveAnimationstringleave animation type (higher order than ‘animation’)
durationnumber300animation duration
classNamestring/className for the container
customStylesobject/custom styles
customMaskStylesobject/custom mask styles

Animation Types

  • zoom
  • fade
  • flip
  • door
  • rotate
  • slideUp
  • slideDown
  • slideLeft
  • slideRight

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *