fix: 权限配置页 GET 请求加 _t 防浏览器缓存 + 保存后自动刷新 UI
This commit is contained in:
@ -4,7 +4,8 @@ import request from '@/utils/request'
|
|||||||
export function getAllPermissionTree() {
|
export function getAllPermissionTree() {
|
||||||
return request({
|
return request({
|
||||||
url: '/v1/permissions/tree',
|
url: '/v1/permissions/tree',
|
||||||
method: 'get'
|
method: 'get',
|
||||||
|
params: { _t: Date.now() }
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -12,7 +13,9 @@ export function getAllPermissionTree() {
|
|||||||
export function getRolePermissions(roleCode: string) {
|
export function getRolePermissions(roleCode: string) {
|
||||||
return request({
|
return request({
|
||||||
url: '/v1/permissions/role/' + roleCode,
|
url: '/v1/permissions/role/' + roleCode,
|
||||||
method: 'get'
|
method: 'get',
|
||||||
|
// 加时间戳防浏览器缓存,确保权限修改后立即反映
|
||||||
|
params: { _t: Date.now() }
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -498,7 +498,17 @@ const handleSave = async () => {
|
|||||||
permissions: permissions
|
permissions: permissions
|
||||||
})
|
})
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
ElMessage.success('权限保存成功!请手动切换角色以刷新显示')
|
ElMessage.success('权限保存成功!')
|
||||||
|
// 立即重新拉取权限刷新 UI(带 cache-busting,确保拿到最新数据)
|
||||||
|
if (currentRole.value) {
|
||||||
|
try {
|
||||||
|
const refreshRes: any = await getRolePermissions(currentRole.value)
|
||||||
|
if (refreshRes.code === 200) {
|
||||||
|
const perms = new Set([...(refreshRes.data.menus || []), ...(refreshRes.data.elements || [])])
|
||||||
|
setRowStatus(tableData.value, perms)
|
||||||
|
}
|
||||||
|
} catch (e) { /* 静默失败 */ }
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ElMessage.error(res.msg || '保存失败')
|
ElMessage.error(res.msg || '保存失败')
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user