数据获取
权限数据查询及初始化。
*fetchCurrent(_, { call, put }) {
const response = yield call(queryCurrent);
// console.log('------------用户信息-------------')
// console.log(response)
yield put({
type: 'saveCurrentUser',
payload: response,
});
},
saveCurrentUser(state, action) {
let data = action.payload.data;
//保存权限
const permissions = data.role.permissions;
setAuthority( permissions.map((item:any)=>item.id));
// setAuthority(["b845d68a12f34dab88236bd45c8e3f90"])
const permissionButtonList = data.authList.map((authData:any) => { return authData.parent_permission + ':' + authData.permission });
data.authButton = permissionButtonList;
return {
...state,
currentUser: data || {},
};
},
功能权限控制
style={{ display: currentUser?.authButton.includes('mycontent:del') ? 'block' : 'none' }}
<Button type="primary" size='small' danger
style={{ display: currentUser?.authButton.includes('mycontent:del') ? 'block' : 'none' }}
onClick={async () => {
Modal.confirm({
title: '删除任务',
content: '确定删除该任务吗?',
okText: '确认',
cancelText: '取消',
onOk: () => {
const success = handleRemoveOne(record);
if (success) {
if (actionRef.current) {
actionRef.current.reload();
}
}
},
});
}}>
删除
</Button>,