UNPKG

joywok-material-components

Version:

<h1 align="center"> Joywok Material Components </h1>

109 lines (102 loc) 3.69 kB
/** * 未匹配到用户/团队 的提示框 * 使用场景: * 自定义用户组 - 导入用户/团队 时,发现有没有匹配到的用户/团队时,提示“未匹配到用户/团队 确认继续导入吗” */ import React , {Component,Fragment} from 'react'; import {connect} from 'dva'; import ReactDOM from 'react-dom'; import Button from '@material-ui/core/Button'; import {createMuiTheme, MuiThemeProvider, withStyles} from '@material-ui/core/styles'; import Dialog from '@material-ui/core/Dialog'; import DialogActions from '@material-ui/core/DialogActions'; import DialogContent from '@material-ui/core/DialogContent'; import DialogContentText from '@material-ui/core/DialogContentText'; import DialogTitle from '@material-ui/core/DialogTitle'; const styles = { }; require('./style/index.css'); class NotFoundDialog extends React.Component{ constructor(props) { super(props); this.state = { open: props.open } } // 关闭弹框 handleClose(){ this.setState({ open: false }) typeof(this.props.handleClose)=='function' && this.props.handleClose(); } submit(){ this.setState({ open: false }) typeof(this.props.onSubmit)=='function' && this.props.onSubmit(); } getTitle(){ let type = this.props.type; let info = {}; switch(type){ case 'jw_n_dept': info.title = i18n('title.notfound.depts'); info.descTip = i18n('tips.notfound.depts'); break; case 'jw_n_user': info.title = i18n('title.notfound.users'); info.descTip = i18n('tips.notfound.users'); break; default: info.title = i18n('title.notfound.datas'); info.descTip = i18n('tips.notfound.datas') break; } return info; } componentWillReceiveProps(nextProps){ if(nextProps.open!=this.state.open){ this.setState({ open: nextProps.open }) } } componentDidMount(){ } render(){ let self = this; // let data = [ // 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', // 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', 'E2073245', // ] let data = this.props.data; let { title, descTip } = this.getTitle(); return <Dialog className="jw-m-addusergroup-dialog jw-m-not-found" open={this.state.open} onClose={()=>this.handleClose()} aria-labelledby="alert-dialog-title" aria-describedby="alert-dialog-description" > <DialogTitle id="alert-dialog-title">{title}<i className="icon-close-big" onClick={()=>this.handleClose()}></i></DialogTitle> <DialogContent className="jw-m-not-found-actions"> <p className="not-found-desc">{descTip.replace('{nums}',' '+data.length+' ')}</p> { _.map(data,function(item){ return <p className="not-found-item ellipsis">{item}</p> }) } </DialogContent> <DialogActions className="addusergroup-actions"> <Button onClick={()=>this.handleClose()} className="addusergroup-cancel-btn" color="primary"> {i18n('btn.cancel')} </Button> <Button onClick={()=>this.submit()} className="addusergroup-save-btn" color="primary"> {i18n('label.score.keep.import')} </Button> </DialogActions> </Dialog> } } export default connect((state)=>{return state})(NotFoundDialog);