File size: 2,692 Bytes
69fc188
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
class CustomSidebar extends HTMLElement {
  connectedCallback() {
    this.attachShadow({ mode: 'open' });
    this.shadowRoot.innerHTML = `
      <style>
        aside {
          width: 240px;
          background: #ffffff;
          padding: 1.5rem 0;
          height: 100vh;
          position: fixed;
          left: 0;
          top: 0;
          border-right: 1px solid #e5e7eb;
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
        }
        .logo {
          padding: 0 1.5rem 1.5rem;
          border-bottom: 1px solid #f3f4f6;
        }
        .logo img {
          height: 32px;
        }
        .nav-menu {
          padding: 0.5rem 0;
        }
        .nav-item {
          padding: 0.5rem 1.5rem;
          margin: 0.25rem 0;
          display: flex;
          align-items: center;
          color: #4b5563;
          cursor: pointer;
          transition: all 0.2s;
        }
        .nav-item:hover {
          background: #f3f4f6;
          color: #3b82f6;
        }
        .nav-item.active {
          background: #eff6ff;
          color: #3b82f6;
        }
        .nav-icon {
          margin-right: 0.75rem;
          width: 20px;
          height: 20px;
        }
        .nav-text {
          font-size: 0.95rem;
        }
      </style>
      <aside>
        <div class="logo">
          <img src="http://static.photos/technology/320x240/10" alt="云端车联管家">
        </div>
        <div class="nav-menu">
          <div class="nav-item active">
            <i data-feather="home" class="nav-icon"></i>
            <span class="nav-text">总览</span>
          </div>
          <div class="nav-item">
            <i data-feather="truck" class="nav-icon"></i>
            <span class="nav-text">车辆管理</span>
          </div>
          <div class="nav-item">
            <i data-feather="cpu" class="nav-icon"></i>
            <span class="nav-text">TCU设备</span>
          </div>
          <div class="nav-item">
            <i data-feather="monitor" class="nav-icon"></i>
            <span class="nav-text">实时监控</span>
          </div>
          <div class="nav-item">
            <i data-feather="upload" class="nav-icon"></i>
            <span class="nav-text">OTA升级</span>
          </div>
          <div class="nav-item">
            <i data-feather="settings" class="nav-icon"></i>
            <span class="nav-text">配置中心</span>
          </div>
          <div class="nav-item">
            <i data-feather="file-text" class="nav-icon"></i>
            <span class="nav-text">日志管理</span>
          </div>
        </div>
      </aside>
    `;
  }
}
customElements.define('custom-sidebar', CustomSidebar);