index.vue 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <template>
  2. <div class="box">
  3. <el-container style="height: 100%">
  4. <el-aside>
  5. <NavbarItem></NavbarItem>
  6. </el-aside>
  7. <el-container>
  8. <el-header>
  9. <Navbar></Navbar>
  10. </el-header>
  11. <el-main>
  12. <router-view></router-view>
  13. </el-main>
  14. </el-container>
  15. </el-container>
  16. </div>
  17. </template>
  18. <script>
  19. import NavbarItem from "@/layout/components/NavbarItem";
  20. import Navbar from "@/layout/components/Navbar";
  21. import Cookies from "js-cookie";
  22. export default {
  23. name: "Layout",
  24. components: { NavbarItem, Navbar },
  25. data() {
  26. return {};
  27. },
  28. mounted() {
  29. this.API.systemnotice.systemnoticeList({ pageSize: 100 }).then((res) => {
  30. let number = 0;
  31. res.data.list.forEach((item) => {
  32. if (item.readFlag == 0) {
  33. number += 1;
  34. }
  35. item.createTime = item.createTime.replace("T", " ");
  36. });
  37. this.$store.dispatch("inform/setreadFlag", number);
  38. if (number == 0) {
  39. this.$store.dispatch("inform/setreadFlag", "");
  40. }
  41. });
  42. },
  43. methods: {},
  44. };
  45. </script>
  46. <style scoped lang="scss">
  47. .box {
  48. width: 100%;
  49. height: 100%;
  50. .el-header {
  51. color: #333;
  52. text-align: center;
  53. width: 1660px;
  54. height: 96px !important;
  55. background: rgba(255, 255, 255, 1);
  56. box-shadow: 0px 3px 10px rgba(41, 109, 227, 0.1);
  57. }
  58. .el-aside {
  59. background-color: #d3dce6;
  60. color: #333;
  61. text-align: center;
  62. height: 100%;
  63. width: 260px !important;
  64. background: rgba(41, 109, 227, 1);
  65. }
  66. .el-main {
  67. background: #fff;
  68. padding: 0;
  69. margin: 14px 0 0 25px;
  70. }
  71. }
  72. </style>