项目场景:
新增字段后获取完整用户信息,在前后端调用
问题描述
文档中提供一下获取用户信息方式
const username = this.$store.state.user;
若自行新增字段后,调用字段显示为空值。
原因分析:
1、未在user.js
挂载
2、未在
ruoyi-common\src\main\java\com\ruoyi\common\core\domain\entity\SysUser
新增字段名
3、未在SysUserMapper中添加映射和查询字段
解决方案:
1、在以下几个部分添加
state: {
// 新增字段
deptName:undefined,
},
mutations: {
// 新增字段
SET_DEPTNAME: (state, deptName) => {
state.deptName = deptName
},
},
actions: {
// 获取用户信息
GetInfo({ commit, state }) {
return new Promise((resolve, reject) => {
getInfo().then(res => {
const user = res.user
const avatar = user.avatar == "" ? require("@/assets/images/profile.jpg") : process.env.VUE_APP_BASE_API + user.avatar;
if (res.roles && res.roles.length > 0) { // 验证返回的roles是否是一个非空数组
// 新增字段*-示例
commit('SET_DEPTNAME', user.deptName)
resolve(res)
}).catch(error => {
reject(error)
})
})
},
}
3、添加示例