9b7e125f
monkeyhouyi
属地页面
|
1
2
3
|
<template>
<header>
<div class="slogin">
|
93186f57
monkeyhouyi
前端整改页面
|
4
|
<!-- 举旗帜聚民心、防风险保安全、强治理惠民生、 增动能促发展、谋合作图共赢 -->
|
9b7e125f
monkeyhouyi
属地页面
|
5
|
</div>
|
6d366830
monkeyhouyi
系统名称-E蓉管理
|
6
|
<div class="title">E蓉管理</div>
|
9b7e125f
monkeyhouyi
属地页面
|
7
8
|
<div class="user">
<div class="head">
|
477ec56f
monkeyhouyi
权限
|
9
|
<el-image :src="avatar" fit="cover"></el-image>
|
9b7e125f
monkeyhouyi
属地页面
|
10
11
|
</div>
<el-dropdown @command="handleCommand">
|
477ec56f
monkeyhouyi
权限
|
12
13
14
|
<div class="info">
{{ userInfo.userName }}({{ userInfo.organizeName }})
</div>
|
9b7e125f
monkeyhouyi
属地页面
|
15
|
<el-dropdown-menu slot="dropdown" router>
|
89ab0203
monkeyhouyi
修改个人信息弹框
|
16
|
<el-dropdown-item command="toUserInfo">修改信息</el-dropdown-item>
|
9b7e125f
monkeyhouyi
属地页面
|
17
18
19
20
21
22
23
|
<passwordForm>
<el-dropdown-item>修改密码</el-dropdown-item>
</passwordForm>
<el-dropdown-item command="logout">退出系统</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</div>
|
5ed26527
monkeyhouyi
1
|
24
|
<UserInfoPage ref="UserInfoPage" v-if="visbleUserInfo" @refresh="visbleUserInfoRefresh"/>
|
9b7e125f
monkeyhouyi
属地页面
|
25
26
27
28
|
</header>
</template>
<script>
|
89ab0203
monkeyhouyi
修改个人信息弹框
|
29
|
import UserInfoPage from './UserInfoPage.vue'
|
9b7e125f
monkeyhouyi
属地页面
|
30
31
|
export default {
name: "Header",
|
89ab0203
monkeyhouyi
修改个人信息弹框
|
32
|
components: {UserInfoPage},
|
9b7e125f
monkeyhouyi
属地页面
|
33
34
|
data() {
return {
|
477ec56f
monkeyhouyi
权限
|
35
|
userInfo: this.$store.state.user.userInfo,
|
89ab0203
monkeyhouyi
修改个人信息弹框
|
36
37
|
avatar: process.env.VUE_APP_BASE_API + this.$store.state.user.avatar,
visbleUserInfo: false,
|
9b7e125f
monkeyhouyi
属地页面
|
38
39
40
41
|
};
},
mounted() {},
methods: {
|
5ed26527
monkeyhouyi
1
|
42
43
|
visbleUserInfoRefresh() {
this.avatar = process.env.VUE_APP_BASE_API + this.$store.state.user.avatar;
|
77e1ac72
monkeyhouyi
优化
|
44
45
46
|
// this.$store.dispatch("resetToken").then(() => {
// this.$router.push(`/login`);
// });
|
5ed26527
monkeyhouyi
1
|
47
48
|
this.visbleUserInfo = false;
},
|
0af91599
monkeyhouyi
弹框请求优化
|
49
50
|
async logout() {
await this.$store.dispatch("LogOut");
|
9b7e125f
monkeyhouyi
属地页面
|
51
52
|
this.$router.push({ path: "/login" });
},
|
89ab0203
monkeyhouyi
修改个人信息弹框
|
53
54
55
56
57
58
|
toUserInfo() {
this.visbleUserInfo = true;
this.$nextTick(() => {
this.$refs.UserInfoPage.init();
});
},
|
9b7e125f
monkeyhouyi
属地页面
|
59
60
61
62
63
64
65
66
67
|
handleCommand(command) {
switch (command) {
case "logout":
this.$confirm("确定退出登录?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
|
0af91599
monkeyhouyi
弹框请求优化
|
68
|
this.logout();
|
9b7e125f
monkeyhouyi
属地页面
|
69
70
71
72
|
})
.catch(() => {});
break;
|
89ab0203
monkeyhouyi
修改个人信息弹框
|
73
74
75
|
case "toUserInfo":
this.toUserInfo();
break;
|
9b7e125f
monkeyhouyi
属地页面
|
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
default:
break;
}
},
},
};
</script>
<style scoped lang="scss">
header {
width: 100%;
color: rgba(255, 255, 255, 1);
position: relative;
.slogin {
position: absolute;
left: 28px;
top: 21px;
width: 600px;
text-align: right;
font-size: 28px;
font-family: Roboto;
font-weight: 400;
line-height: 39px;
}
.title {
text-align: center;
width: 100%;
padding-top: 5px;
font-size: 40px;
font-weight: 700;
line-height: 56px;
}
.user {
position: absolute;
right: 33px;
|
5a14192c
monkeyhouyi
1
|
111
|
top: 13px;
|
9b7e125f
monkeyhouyi
属地页面
|
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
display: flex;
align-items: center;
flex-direction: row;
.head {
width: 50px;
height: 50px;
margin-right: 13px;
.el-image {
width: 100%;
height: 100%;
border-radius: 50%;
}
}
.info {
color: #fff;
cursor: pointer;
}
}
}
</style>
|