index.js 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. import { UnityAction } from '@/utils/utils';
  2. import { useState } from 'react';
  3. import styles from './index.less';
  4. const menuList = [
  5. {
  6. name: '首页',
  7. icon: require('@/assets/menu/home.png'),
  8. // path: (projectId) => `/home/${projectId}`,
  9. },
  10. {
  11. name: '工况管理',
  12. icon: require('@/assets/menu/working.png'),
  13. // path: (projectId) => `/smart/work/${projectId}`,
  14. },
  15. {
  16. name: '系统自检',
  17. icon: require('@/assets/menu/setting.png'),
  18. // path: (projectId) => `/self-inspection/${projectId}`,
  19. },
  20. {
  21. name: '智能管控',
  22. icon: require('@/assets/menu/ai.png'),
  23. // path: (projectId) => `/hardware-controller/${projectId}`,
  24. },
  25. {
  26. name: '数字孪生',
  27. icon: require('@/assets/menu/number.png'),
  28. },
  29. {
  30. name: '智慧运营',
  31. icon: require('@/assets/menu/smart.png'),
  32. // path: (projectId) => `/smart-ops/${projectId}`,
  33. },
  34. {
  35. name: '安全管理',
  36. icon: require('@/assets/menu/safty.png'),
  37. // path: (projectId) => `/safety/${projectId}`,
  38. },
  39. {
  40. name: '任务管理',
  41. icon: require('@/assets/menu/walk.png'),
  42. // path: (projectId) => `/task-manage/${projectId}`,
  43. },
  44. {
  45. name: '设备管理',
  46. icon: require('@/assets/menu/device.png'),
  47. // path: (projectId) => `/device/${projectId}`,
  48. },
  49. ];
  50. function Menu() {
  51. const [active, setActive] = useState('首页');
  52. const handleClick = (item) => {
  53. setActive(item.name);
  54. UnityAction.sendMsg('menuItem', item.name);
  55. };
  56. const handleBackClick = () => {
  57. UnityAction.sendMsg('HideMenu');
  58. };
  59. return (
  60. <div className={styles.main}>
  61. <div className={styles.menu}>
  62. {menuList.map((item) => (
  63. <div
  64. key={item.name}
  65. className={styles.text}
  66. onClick={() => handleClick(item)}
  67. >
  68. <img className={styles.icon} src={item.icon} />
  69. {item.name}
  70. </div>
  71. ))}
  72. </div>
  73. <div className={styles.arrowCon} onClick={handleBackClick}>
  74. <div className={styles.arrow} />
  75. </div>
  76. </div>
  77. );
  78. }
  79. export default Menu;