UNPKG

react-ui-component

Version:
150 lines (144 loc) 5.29 kB
import React, { Component } from 'react'; import {SlideMenu} from './index.js'; export default class SlideMenuDemo extends Component { constructor(props){ super(props); } handleClose(){ return confirm('close slide?') } handleOpenSlide(ref){ const node = this.refs[ref] node.open() } render() { let contentNode = <div style={{'padding': '20px'}}> <h4>this is header</h4> <p>this is content, where have something here, fill in</p> <a href="http://braavos.me" target="_blank">blog</a> </div>; return ( <div> <h3>Slide menu</h3> <pre> <code>onClose need a return value(Boolean), to decide whether close slide menu</code> </pre> <ol> <li> <h4>Default slidemenu</h4> <button onClick={this.handleOpenSlide.bind(this, 'slide0')}>click</button> <SlideMenu ref="slide0" > {contentNode} </SlideMenu> <pre> <code> {` <button onClick={this.refs.slide.open}>click</button> <SlideMenu ref="slide"> ... </SlideMenu> `} </code> </pre> </li> <li> <h4>slide menu with position</h4> <button onClick={this.handleOpenSlide.bind(this, 'slide1')}>click</button> <SlideMenu position="left" ref="slide1" > {contentNode} </SlideMenu> <pre> <code> {` <SlideMenu position="left" ref="slide"> ... </SlideMenu> `} </code> </pre> <button onClick={this.handleOpenSlide.bind(this, 'slide2')}>click</button> <SlideMenu position="right" ref="slide2" > {contentNode} </SlideMenu> <pre> <code> {` <SlideMenu position="right" ref="slide"> ... </SlideMenu> `} </code> </pre> <button onClick={this.handleOpenSlide.bind(this, 'slide3')}>click</button> <SlideMenu position="top" ref="slide3" > {contentNode} </SlideMenu> <pre> <code> {` <SlideMenu position="top" ref="slide"> ... </SlideMenu> `} </code> </pre> <button onClick={this.handleOpenSlide.bind(this, 'slide4')}>click</button> <SlideMenu position="bottom" ref="slide4" > {contentNode} </SlideMenu> <pre> <code> {` <SlideMenu position="bottom" ref="slide"> ... </SlideMenu> `} </code> </pre> </li> <li> <h4>Width</h4> <button onClick={this.handleOpenSlide.bind(this, 'slide5')}>click</button> <SlideMenu ref="slide5" width={500}> {contentNode} <h4 style={{'textAlign': 'center'}}>width: 500px</h4> </SlideMenu> <pre> <code> {` <SlideMenu ref="slide" width={500}> ... </SlideMenu> `} </code> </pre> </li> <li> <h4>Close slidemenu action</h4> <button onClick={this.handleOpenSlide.bind(this, 'slide6')}>click</button> <SlideMenu ref="slide6" onClose={this.handleClose.bind(this)}> {contentNode} <div style={{'padding': '10px'}}> <h3> <button onClick={() => {this.refs.slide6.close()}}> Click to close </button> </h3> </div> </SlideMenu> <pre> <code> {` <SlideMenu ref="slide" onClose={closeFunc}> ... <button onClick={this.refs.slide.close}>click to close</button> </SlideMenu> `} </code> </pre> </li> </ol> </div> ); } }