index.jsx 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  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. this.handleShow=this.handleShow.bind(this)
  14. }
  15. slideToggle(type){
  16. if(type){
  17. $("#emergencyName").css({"display":"block"})
  18. $("#emergencyPic").css("display","block")
  19. $("#emergencys").css("display","none")
  20. $("#emergency").css("display","block")
  21. $("#emergencyWrap").css({"width":"auto","height":"44px","paddingLeft":"50px","paddingRight":"30px"})
  22. }else{
  23. $("#emergencyName").css({"display":"none","padding":"0"})
  24. $("#emergencyPic").css("display","none")
  25. $("#emergencyWrap").css({"width":"44px","height":"44px","padding":"0"})
  26. $("#emergencys").css("display","block")
  27. $("#emergency").css("display","none")
  28. }
  29. }
  30. handleShow(type){
  31. this.setState({
  32. show:type
  33. })
  34. !type&&this.slideToggle(0)
  35. }
  36. render(){
  37. const {data,setDataIdx,idx,windowHeight} = this.props;
  38. const domNode = document.getElementById('root');
  39. return ReactDom.createPortal(<div className={styles.emergencyProdureWrap}>
  40. <div id="emergencyWrap" className={styles.emergencyWrap}>
  41. <span id="emergency" className={`${styles.emergency}`} onClick={()=>this.slideToggle(0)}>急</span>
  42. <span id="emergencys" onClick={()=>this.slideToggle(1)} className={styles.emergency}>急</span>
  43. <div id="emergencyName" className={styles.emergencyName} onClick={()=>this.handleShow(true)}>{data.emergencyname}</div>
  44. <i onClick={()=>this.slideToggle(0)} id="emergencyPic"><img src={right} alt=""/></i>
  45. </div>
  46. {
  47. <EmergencyModal windowHeight={windowHeight} idx={idx} handleShow={()=>this.handleShow()} setDataIdx={setDataIdx} show={this.state.show} data={data}></EmergencyModal>
  48. }
  49. </div>,domNode)
  50. }
  51. }
  52. export default EmergencyProcedure;