Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-platform
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
黄庭坚
jinfa-platform
Commits
493b2b9a
Commit
493b2b9a
authored
May 16, 2022
by
rainbowmorel@163.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加 Logout func
parent
fa2e3e9f
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
26 additions
and
8 deletions
+26
-8
app.tsx
src/app.tsx
+4
-1
AvatarDropdown.tsx
src/layouts/components/AvatarDropdown.tsx
+5
-3
keycloak-js.ts
src/utils/keycloak-js.ts
+17
-4
No files found.
src/app.tsx
View file @
493b2b9a
...
@@ -97,7 +97,7 @@ export function render(oldRender: Function) {
...
@@ -97,7 +97,7 @@ export function render(oldRender: Function) {
isAuthenticated
()
isAuthenticated
()
setAuthInfo
()
setAuthInfo
()
.
finally
(()
=>
{
const
{
pathname
}
=
history
.
location
const
{
pathname
}
=
history
.
location
// 白名单页面不进行权限校验
// 白名单页面不进行权限校验
...
@@ -135,6 +135,9 @@ export function render(oldRender: Function) {
...
@@ -135,6 +135,9 @@ export function render(oldRender: Function) {
removeEnableMultiTenancy
()
removeEnableMultiTenancy
()
oldRender
()
oldRender
()
}
}
})
})
})
...
...
src/layouts/components/AvatarDropdown.tsx
View file @
493b2b9a
...
@@ -8,6 +8,7 @@ import { removeAuth, removeRouters, getAuth } from '@/utils/auth';
...
@@ -8,6 +8,7 @@ import { removeAuth, removeRouters, getAuth } from '@/utils/auth';
import
{
inject
,
observer
}
from
'mobx-react'
import
{
inject
,
observer
}
from
'mobx-react'
import
Icon
from
'@ant-design/icons'
;
import
Icon
from
'@ant-design/icons'
;
import
{
ReactComponent
as
DefaultAvatar
}
from
'@/assets/imgs/default_avatar.svg'
;
import
{
ReactComponent
as
DefaultAvatar
}
from
'@/assets/imgs/default_avatar.svg'
;
import
{
SpaLogout
}
from
'@/utils/keycloak-js'
;
const
AvatarDropdown
=
(
props
)
=>
{
const
AvatarDropdown
=
(
props
)
=>
{
...
@@ -16,11 +17,12 @@ const AvatarDropdown = (props) => {
...
@@ -16,11 +17,12 @@ const AvatarDropdown = (props) => {
const
logout
=
()
=>
{
const
logout
=
()
=>
{
removeAuth
()
removeAuth
()
removeRouters
()
removeRouters
()
SpaLogout
()
history
.
replace
(
'/user/login'
)
history
.
replace
(
'/user/login'
)
}
}
const
currentUser
=
{
const
currentUser
=
{
name
:
userAuth
.
name
||
userAuth
?.
company
||
intl
.
formatMessage
({
id
:
'common.weizhiyonghu'
}),
name
:
userAuth
.
name
||
userAuth
?.
company
||
intl
.
formatMessage
({
id
:
'common.weizhiyonghu'
}),
avatar
:
props
.
UserStore
.
avatar
||
''
,
avatar
:
props
.
UserStore
.
avatar
||
''
,
}
}
...
@@ -36,11 +38,11 @@ const AvatarDropdown = (props) => {
...
@@ -36,11 +38,11 @@ const AvatarDropdown = (props) => {
</Menu.Item>
</Menu.Item>
<Menu.Divider /> */
}
<Menu.Divider /> */
}
<
Menu
.
Item
key=
"changePwd"
>
<
Menu
.
Item
key=
"changePwd"
>
<
Link
to=
"/memberCenter/systemSetting/accountSetting"
><
LockOutlined
/>
{
intl
.
formatMessage
({
id
:
'common.xiugaimima'
})
}
</
Link
>
<
Link
to=
"/memberCenter/systemSetting/accountSetting"
><
LockOutlined
/>
{
intl
.
formatMessage
({
id
:
'common.xiugaimima'
})
}
</
Link
>
</
Menu
.
Item
>
</
Menu
.
Item
>
<
Menu
.
Item
onClick=
{
logout
}
key=
"logout"
>
<
Menu
.
Item
onClick=
{
logout
}
key=
"logout"
>
<
LogoutOutlined
/>
<
LogoutOutlined
/>
{
intl
.
formatMessage
({
id
:
'common.tuichudenglu'
})
}
{
intl
.
formatMessage
({
id
:
'common.tuichudenglu'
})
}
</
Menu
.
Item
>
</
Menu
.
Item
>
</
Menu
>
</
Menu
>
)
)
...
...
src/utils/keycloak-js.ts
View file @
493b2b9a
import
{
getMemberInReturnForToken
}
from
'@/services/MemberV2Api'
;
import
{
getMemberInReturnForToken
}
from
'@/services/MemberV2Api'
;
import
{
message
}
from
'antd'
;
import
Keycloak
from
'keycloak-js'
;
import
Keycloak
from
'keycloak-js'
;
let
_keycloak
=
null
;
let
_keycloak
=
null
;
...
@@ -35,17 +36,28 @@ export function getKeycloakToken(): string {
...
@@ -35,17 +36,28 @@ export function getKeycloakToken(): string {
return
getKeycloak
().
token
return
getKeycloak
().
token
}
}
export
function
setAuthInfo
()
{
export
function
setAuthInfo
()
:
Promise
<
any
>
{
getMemberInReturnForToken
({},
{
return
getMemberInReturnForToken
({},
{
headers
:
{
headers
:
{
keycloakToken
:
getKeycloakToken
()
keycloakToken
:
getKeycloakToken
()
}
}
}).
then
(
res
=>
res
.
data
)
}).
then
(
res
=>
{
.
then
(
res
=>
{
if
(
res
.
code
!==
1000
)
{
message
.
error
(
res
.
message
);
return
}
return
res
.
data
;
}).
then
(
res
=>
{
if
(
undefined
!=
res
)
{
localStorage
.
setItem
(
'AUTH'
,
JSON
.
stringify
(
res
))
localStorage
.
setItem
(
'AUTH'
,
JSON
.
stringify
(
res
))
}
})
})
}
}
export
function
SpaLogin
()
{
export
function
SpaLogin
()
{
getKeycloak
().
login
({
redirectUri
:
window
.
location
.
origin
})
getKeycloak
().
login
({
redirectUri
:
window
.
location
.
origin
})
}
}
export
function
SpaLogout
()
{
getKeycloak
().
logout
()
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment