yylib-quick-mobile
Version:
yylib-quick-mobile
60 lines (59 loc) • 1.83 kB
JavaScript
import React, {Component} from 'react';
import { Drawer } from 'antd-mobile';
import './YYDrawer.less';
import classnames from 'classnames';
class YYDrawer extends Component {
onOpenChange(flag) {
this.props.onOpenChange&&this.props.onOpenChange(flag);
}
renderSidebar() {
var sidebar = (<div></div>);
if (this.props.renderSidebar) {
sidebar = this.props.renderSidebar();
}
return sidebar;
}
render() {
let {RunInDesign,children,open,position,width,dragToggleDistance,docked,className,sidebarStyle,contentStyle,overlayStyle,dragHandleStyle,...restProps} = this.props;
let wrapClz = classnames('yy-drawer', className);
if(RunInDesign){
/*****设计期*****/
if(window.ModelID&&this.props.nid==window.ModelID){
open=true;
}
}
return (
<Drawer
{...restProps}
className={wrapClz}
style={{ minHeight: document.documentElement.clientHeight }}
enableDragHandle={false}
contentStyle={{ color: '#A6A6A6', textAlign: 'center', paddingTop: 42 }}
sidebar={this.renderSidebar()}
open={open}
position={position}
dragToggleDistance={dragToggleDistance}
onOpenChange={this.onOpenChange.bind(this)}
sidebarStyle={sidebarStyle?sidebarStyle:{width:width}}
contentStyle={contentStyle}
overlayStyle={overlayStyle}
dragHandleStyle={dragHandleStyle}
docked={docked?open:docked}>
{children}
</Drawer>
);
}
}
YYDrawer.defaultProps = {
position:'left',
dragToggleDistance:30,
width:'80%',
docked:false,
enableDragHandle:false,
sidebarStyle:null,
contentStyle:null,
overlayStyle:null,
dragHandleStyle:null,
children:''
}
export default YYDrawer;