Blame view

src/views/layout/layout.vue 3.39 KB
c1b532ad   梁保满   权限配置,路由基础设置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  <template>
    <div id="loyout">
      <el-container>
        <layoutAside></layoutAside>
        <el-container>
          <layoutHeader></layoutHeader>
          <el-main id="elmain">
            <transition name="main" mode="out-in">
              <router-view></router-view>
            </transition>
          </el-main>
          <el-footer height="28px">
            <Bottom></Bottom>
          </el-footer>
        </el-container>
      </el-container>
    </div>
  </template>
  
  <script>
  import layoutAside from "./aside/aside";
  import layoutHeader from "./header/header";
  import Bottom from "./Footer/bottom";
  import langSelect from "../../components/lang/langSelect";
13b58a42   梁保满   备题组卷部分前端页面基本完成
25
  import { getURLParams } from "@/utils";
c1b532ad   梁保满   权限配置,路由基础设置
26
27
28
29
30
31
32
33
34
  
  export default {
    name: "layout",
    components: {
      layoutHeader,
      Bottom,
      langSelect,
      layoutAside,
    },
13b58a42   梁保满   备题组卷部分前端页面基本完成
35
36
37
38
39
40
    data() {
      return {
        code: "",
      };
    },
    created() {
b769660c   梁保满   备课组题细节调整,随堂问列表页面开发完成
41
      this.initRouter();
13b58a42   梁保满   备题组卷部分前端页面基本完成
42
43
    },
    methods: {
b769660c   梁保满   备课组题细节调整,随堂问列表页面开发完成
44
45
46
47
48
49
50
      initRouter() {
        this.code = getURLParams("code") || this.$store.getters.code;
        if (this.code) {
          this.$store.commit("setCode", this.code);
          this._LoginCheck();
        }
      },
13b58a42   梁保满   备题组卷部分前端页面基本完成
51
52
53
54
55
56
57
      async _LoginCheck() {
        let params = {};
        if (this.code) {
          params = {
            code: this.code,
          };
        }
b769660c   梁保满   备课组题细节调整,随堂问列表页面开发完成
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
92
93
94
95
96
97
        // const { data = {}, message, code } = await loginCheck(params);
        // if (code === 0) {
        //   if (data) {
        const userInfo = {
          permissions: [
            {
              role: "superAdmin",
              roleName: "超级管理员",
            },
          ],
          name: "李老师",
          // avatar: data.avatar ? data.avatar : "",
          // uid: data.id,
          authorityRouter: [
            "examinationPaper",
            "examinationPaperAdd",
            "examinationPaperEdit",
            "examinationPaperRecycle",
            "ask",
            "askAnalysis",
            "test",
            "testAnalysis",
          ],
        };
        await this.$store.commit("setInfo", { ...userInfo });
        await this.$store.commit("setRouters", userInfo.authorityRouter);
        let newAddRouters = this.$store.getters.addRouters;
        newAddRouters.forEach((res) => {
          this.$router.addRoute(res);
        });
        this.$router.addRoute({
          path: "*",
          redirect: "/404",
          hidden: true,
          children: [],
        });
        // }
        // } else {
        //   this.$message.error(message);
        // }
13b58a42   梁保满   备题组卷部分前端页面基本完成
98
99
      },
    },
c1b532ad   梁保满   权限配置,路由基础设置
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
  };
  </script>
  
  <style>
  .main-enter,
  .main-leave-to {
    opacity: 0;
    transform: translateY(30px);
  }
  .main-enter-active {
    transition: all 0.2s;
  }
  .main-leave-active {
    position: absolute;
    transition: all 0.3s;
  }
  </style>
d4283687   梁保满   首页布局完成,页面顶部返回组件
117
  <style lang="scss" scoped>
c1b532ad   梁保满   权限配置,路由基础设置
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
  $top: top;
  $bottom: bottom;
  $left: left;
  $right: right;
  $leftright: ($left, $right);
  %w100 {
    width: 100%;
  }
  
  %h100 {
    height: 100%;
  }
  
  %cursor {
    cursor: pointer;
  }
d4283687   梁保满   首页布局完成,页面顶部返回组件
134
  
c1b532ad   梁保满   权限配置,路由基础设置
135
136
137
138
139
140
141
142
143
144
145
146
147
148
  #loyout,
  .el-container,
  #asideNav,
  ul.el-menu {
    @extend %h100;
  }
  
  @mixin set-value($side, $value) {
    @each $prop in $leftright {
      #{$side}-#{$prop}: $value;
    }
  }
  
  #elmain {
d4283687   梁保满   首页布局完成,页面顶部返回组件
149
    background-color: #fff;
13b58a42   梁保满   备题组卷部分前端页面基本完成
150
    padding: 0;
c1b532ad   梁保满   权限配置,路由基础设置
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
  }
  
  .avatar-uploader .el-upload {
    border: 1px dashed #d9d9d9 !important;
    border-radius: 6px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
  }
  .avatar-uploader .el-upload:hover {
    border-color: #409eff;
  }
  .avatar-uploader-icon {
    font-size: 28px;
    color: #8c939d;
    width: 178px;
    height: 178px;
    line-height: 178px;
    text-align: center;
  }
  .avatar {
    width: 178px;
    height: 178px;
    display: block;
  }
  </style>