index.jsx 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import styles from './index.less';
  2. import right from './img/right.png';
  3. import EmergencyModal from './EmergencyModal';
  4. import $ from 'jquery';
  5. import ReactDom from "react-dom";
  6. class EmergencyProcedure extends React.Component {
  7. constructor(props){
  8. super(props);
  9. this.state = {
  10. show:false,
  11. data:{}
  12. }
  13. }
  14. slideToggle(type){
  15. if(type){
  16. $("#emergencyName").css({"display":"block","paddingLeft":"50px","paddingRight":"30px"})
  17. $("#emergencyPic").css("display","block")
  18. $("#emergencys").css("display","none")
  19. $("#emergency").css("display","block")
  20. $("#emergencyWrap").css({"width":"auto","height":"44px"})
  21. }else{
  22. $("#emergencyName").css({"display":"none","padding":"0"})
  23. $("#emergencyPic").css("display","none")
  24. $("#emergencyWrap").css({"width":"44px","height":"44px"})
  25. $("#emergencys").css("display","block")
  26. $("#emergency").css("display","none")
  27. }
  28. }
  29. handleShow(type){
  30. this.setState({
  31. show:type
  32. })
  33. }
  34. render(){
  35. const {data,setDataIdx,idx} = this.props;
  36. const domNode = document.getElementById('root');
  37. return ReactDom.createPortal(<div className={styles.emergencyProdureWrap}>
  38. <div id="emergencyWrap" className={styles.emergencyWrap}>
  39. <span id="emergency" className={`${styles.emergency}`} onClick={()=>this.slideToggle(0)}>急</span>
  40. <span id="emergencys" onClick={()=>this.slideToggle(1)} className={styles.emergency}>急</span>
  41. <div id="emergencyName" className={styles.emergencyName} onClick={()=>this.handleShow(true)}>{data.emergencyname}</div>
  42. <i onClick={()=>this.slideToggle(0)} id="emergencyPic"><img src={right} alt=""/></i>
  43. </div>
  44. {
  45. <EmergencyModal idx={idx} handleShow={()=>this.handleShow()} setDataIdx={setDataIdx} show={this.state.show} data={data}></EmergencyModal>
  46. }
  47. </div>,domNode)
  48. }
  49. }
  50. export default EmergencyProcedure;