content.jsx 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import React from 'react';
  2. import '../content.less';
  3. import LeftTab from './leftTab.jsx';
  4. import GroupLeftTab from './leftTabgroup.jsx';
  5. import Base from './base.jsx';
  6. import Group from './group.jsx';
  7. import Person from './person.jsx';
  8. import Company from './company.jsx';
  9. import Edu from './edu.jsx';
  10. import Tech from './tech.jsx';
  11. import Pfs from './pfs.jsx';
  12. import Ablt from './ablt.jsx';
  13. const Content = React.createClass({
  14. getInitialState() {
  15. return {
  16. loading: false,
  17. leftKey: 'base',
  18. userType: '0'
  19. };
  20. },
  21. handlekey(key) {
  22. this.setState({
  23. leftKey: key,
  24. });
  25. window.location.hash = key;
  26. },
  27. componentWillMount() {
  28. if (userData) {
  29. if (userData.type == '0') {
  30. this.state.leftKey = 'base';
  31. } else if (userData.type == '1') {
  32. this.state.leftKey = 'group';
  33. };
  34. };
  35. if ( window.location.hash ) {
  36. this.handlekey(window.location.hash.substr(1));
  37. };
  38. },
  39. render() {
  40. return (
  41. <div className="acc-content">
  42. {(() => {
  43. switch (userData.type || this.state.userType) {
  44. case '0':
  45. return <LeftTab handlekey={this.handlekey} />;
  46. case '1':
  47. return <GroupLeftTab handlekey={this.handlekey} />;
  48. };
  49. })()}
  50. <div className="content-right">
  51. {(() => {
  52. switch (this.state.leftKey) {
  53. case 'base':
  54. return <Base />;
  55. case 'person':
  56. return <Person />;
  57. case 'edu':
  58. return <Edu />;
  59. case 'pfs':
  60. return <Pfs />;
  61. case 'ablt':
  62. return <Ablt />;
  63. case 'group':
  64. return <Group />;
  65. case 'company':
  66. return <Company />;
  67. case 'tech':
  68. return <Tech />;
  69. };
  70. })()}
  71. </div>
  72. </div>
  73. )
  74. }
  75. });
  76. export default Content;