navbar.js 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. function navbar(props) {
  2. return {
  3. $template: `
  4. <nav @vue:mounted="getDashboardList" class="navbar navbar-expand-lg navbar-dark bg-dark fixed-top" aria-label="Offcanvas navbar large">
  5. <div class="container-fluid">
  6. <a class="navbar-brand" href="/app/index.html"><img src="/app/images/dongke-logo.png" alt="Logo" height="30" class="d-inline-block align-text-top"> 东科软件</a>
  7. <button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasNavbar2" aria-controls="offcanvasNavbar2" aria-label="Toggle navigation">
  8. <span class="navbar-toggler-icon"></span>
  9. </button>
  10. <div class="offcanvas offcanvas-end text-bg-dark" tabindex="-1" id="offcanvasNavbar2" aria-labelledby="offcanvasNavbar2Label">
  11. <div class="offcanvas-header">
  12. <h5 class="offcanvas-title" id="offcanvasNavbar2Label">电子看板目录</h5>
  13. <button type="button" class="btn-close btn-close-white" data-bs-dismiss="offcanvas" aria-label="Close"></button>
  14. </div>
  15. <div class="offcanvas-body">
  16. <ul class="navbar-nav justify-content-end flex-grow-1 pe-3">
  17. <li class="nav-item">
  18. <a class="nav-link active" aria-current="page" href="/app/index.html">首页</a>
  19. </li>
  20. <li class="nav-item dropdown">
  21. <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
  22. 设备部
  23. </a>
  24. <ul class="dropdown-menu">
  25. <li><a class="dropdown-item" v-for="(item,index) in dashboardList.device" :key="index" :href="item.url" >{{item.name}}</a></li>
  26. </ul>
  27. </li>
  28. <li class="nav-item dropdown">
  29. <a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
  30. 总经办
  31. </a>
  32. <ul class="dropdown-menu">
  33. <li><a class="dropdown-item" v-for="(item,index) in dashboardList.manage" :key="index" :href="item.url" >{{item.name}}</a></li>
  34. </ul>
  35. </li>
  36. </ul>
  37. </div>
  38. </div>
  39. </div>
  40. </nav>
  41. <div class="pt-5">
  42. </div>
  43. `,
  44. //设备看板列表
  45. dashboardList: [],
  46. //获取数据方法
  47. getDashboardList() {
  48. let self = this;
  49. axios.get('/app/api/getDashboardList.ashx')
  50. .then(function (response) {
  51. self.dashboardList = response.data;
  52. })
  53. .catch(function (error) {
  54. });
  55. }
  56. }
  57. }