Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
X
xiaomai-cloud-class-web
Overview
Overview
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xiaomai-cloud-class
xiaomai-cloud-class-web
Commits
d1a8af94
Commit
d1a8af94
authored
Dec 26, 2020
by
wufan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix:新增登录后按角色跳转功能
parent
2c8fe8f0
Show whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
115 additions
and
14 deletions
+115
-14
src/common/js/user.ts
+8
-1
src/modules/root/App.tsx
+5
-3
src/modules/root/Login.jsx
+1
-1
src/modules/root/Main.jsx
+2
-1
src/modules/root/SwitchRoute.tsx
+47
-0
src/routes/config/mainRoutes.tsx
+10
-5
src/routes/config/redirectRoutes.tsx
+17
-0
src/routes/index.tsx
+25
-3
No files found.
src/common/js/user.ts
View file @
d1a8af94
...
...
@@ -2,7 +2,7 @@
* @Author: 吴文洁
* @Date: 2020-08-31 09:34:25
* @LastEditors: wufan
* @LastEditTime: 2020-12-
08 15:31:4
3
* @LastEditTime: 2020-12-
26 14:19:2
3
* @Description:
* @Copyright: 杭州杰竞科技有限公司 版权所有
*/
...
...
@@ -27,6 +27,9 @@ class User {
getUserId
(){
return
Storage
.
get
(
`
${
PREFIX
}
_userId`
)
}
getUserRole
(){
return
Storage
.
get
(
`
${
PREFIX
}
_userRole`
)
}
getToken
()
{
return
Storage
.
get
(
`
${
PREFIX
}
_token`
);
...
...
@@ -48,6 +51,10 @@ class User {
return
Storage
.
set
(
`
${
PREFIX
}
_userId`
,
value
)
}
setUserRole
(
value
:
any
){
return
Storage
.
set
(
`
${
PREFIX
}
_userRole`
,
value
)
}
setToken
(
value
:
any
)
{
return
Storage
.
set
(
`
${
PREFIX
}
_token`
,
value
);
}
...
...
src/modules/root/App.tsx
View file @
d1a8af94
/*
* @Author: 吴文洁
* @Date: 2019-07-10 10:30:49
* @LastEditors:
zhangleyu
an
* @LastEditTime: 2020-12-2
2 15:39:28
* @LastEditors:
wuf
an
* @LastEditTime: 2020-12-2
6 14:47:37
* @Description:
*/
import
React
,
{
useContext
,
useEffect
,
useState
}
from
'react'
;
...
...
@@ -39,11 +39,13 @@ const App: React.FC = (props: any) => {
BaseService
.
getUserStore
({
userId
}).
then
((
res
)
=>
{
const
{
storeGroupVOS
=
[],
storeVOS
=
[]
}
=
res
.
result
;
const
{
id
,
storeUserId
,
storeName
}
=
storeVOS
[
0
];
const
{
id
,
storeUserId
,
storeName
,
userRole
}
=
storeVOS
[
0
];
console
.
log
(
"userRole----app"
,
userRole
)
User
.
setStoreId
(
id
);
User
.
setStoreUserId
(
storeUserId
);
User
.
setStoreName
(
storeName
);
User
.
setUserRole
(
userRole
);
ctx
.
dispatch
(
setStoreGroupList
(
storeGroupVOS
))
ctx
.
dispatch
(
setStoreList
(
storeVOS
));
serStoreUserId
(
storeUserId
)
...
...
src/modules/root/Login.jsx
View file @
d1a8af94
...
...
@@ -102,7 +102,7 @@ function Login(props) {
User
.
setUserId
(
res
.
result
.
userId
);
User
.
setToken
(
res
.
result
.
xmToken
);
window
.
RCHistory
.
push
({
pathname
:
`/
resource-disk
`
,
pathname
:
`/
switch-route
`
,
})
}
})
...
...
src/modules/root/Main.jsx
View file @
d1a8af94
import
React
,
{
useContext
,
useEffect
,
useState
}
from
'react'
import
'./Main.less'
;
import
{
MainRoutes
}
from
'@/routes'
;
import
{
MainRoutes
,
RedirectRoutes
}
from
'@/routes'
;
function
Main
(
props
){
const
{
menuType
}
=
props
;
...
...
@@ -11,6 +11,7 @@ function Main(props){
id=
"rightContainer"
>
<
MainRoutes
/>
<
RedirectRoutes
/>
</
div
>
)
}
...
...
src/modules/root/SwitchRoute.tsx
0 → 100644
View file @
d1a8af94
/*
* @Author: wufan
* @Date: 2020-12-26 11:51:14
* @LastEditors: wufan
* @LastEditTime: 2020-12-26 15:04:26
* @Description: 登录后跳转承载页面
* @@Copyrigh: © 2020 杭州杰竞科技有限公司 版权所有
*/
import
React
,
{
useEffect
,
useState
}
from
"react"
;
import
{
withRouter
}
from
"react-router-dom"
;
import
User
from
"@/common/js/user"
;
interface
SwitchProps
{}
function
SwitchRoute
(
props
:
SwitchProps
)
{
useEffect
(()
=>
{
const
userRole
=
User
.
getUserRole
();
/**
* 角色登录后跳转
* 管理员和店铺管理员登录后跳转到直播课列表页面
* 讲师登录后跳转资料云盘页面
*/
switch
(
userRole
)
{
case
"CloudManager"
:
window
.
RCHistory
.
replace
({
pathname
:
`/redirect-to-live-course`
,
});
break
;
case
"StoreManager"
:
window
.
RCHistory
.
replace
({
pathname
:
`/redirect-to-live-course`
,
});
break
;
case
"CloudLecturer"
:
window
.
RCHistory
.
replace
({
pathname
:
`/redirect-to-resource-disk`
,
});
break
;
}
},
[
User
.
getUserRole
()]);
return
<
div
></
div
>
}
export
default
SwitchRoute
;
src/routes/config/mainRoutes.tsx
View file @
d1a8af94
...
...
@@ -2,7 +2,7 @@
* @Author: 吴文洁
* @Date: 2020-04-29 10:26:32
* @LastEditors: wufan
* @LastEditTime: 2020-12-
16 16:39:03
* @LastEditTime: 2020-12-
26 14:44:41
* @Description: 内容线路由配置
*/
import
EmployeesManagePage
from
'@/modules/store-manage/EmployeesManagePage'
;
...
...
@@ -12,9 +12,8 @@ import StoreDecorationPage from '@/modules/store-manage/StoreDecorationPage';
import
CourseCatalogPage
from
'@/modules/store-manage/CourseCatalogPage'
;
import
LiveCoursePage
from
'@/modules/course-manage/LiveCoursePage'
;
import
AddLivePage
from
'@/modules/course-manage/AddLive'
import
DataList
from
'@/modules/course-manage/DataList/DataList'
;
import
ClassBook
from
'@/modules/resource-disk'
;
import
ResourceDisk
from
'@/modules/resource-disk'
;
import
SwitchRoute
from
'@/modules/root/SwitchRoute'
;
const
mainRoutes
=
[
{
...
...
@@ -54,9 +53,14 @@ const mainRoutes = [
},
{
path
:
'/resource-disk'
,
component
:
ClassBoo
k
,
component
:
ResourceDis
k
,
name
:
'资料云盘'
},
{
path
:
'/switch-route'
,
component
:
SwitchRoute
,
name
:
'登录后跳转承载页'
}
]
export
default
mainRoutes
;
\ No newline at end of file
src/routes/config/redirectRoutes.tsx
0 → 100644
View file @
d1a8af94
import
LiveCoursePage
from
"@/modules/course-manage/LiveCoursePage"
;
import
ResourceDisk
from
"@/modules/resource-disk"
;
const
redirectRoutes
=
[
{
path
:
"/redirect-to-live-course"
,
component
:
LiveCoursePage
,
name
:
"课程管理"
,
},
{
path
:
"/redirect-to-resource-disk"
,
component
:
ResourceDisk
,
name
:
"资料云盘"
,
},
];
export
default
redirectRoutes
;
src/routes/index.tsx
View file @
d1a8af94
/*
* @Author: 吴文洁
* @Date: 2020-04-28 18:05:30
* @LastEditors:
zhangleyu
an
* @LastEditTime: 2020-12-
11 14:36:59
* @LastEditors:
wuf
an
* @LastEditTime: 2020-12-
26 14:37:23
* @Description:
*/
import
mainRoutes
from
'./config/mainRoutes'
;
import
redirectRoutes
from
'./config/redirectRoutes'
;
import
React
from
'react'
import
{
Redirect
,
HashRouter
as
Router
,
Route
,
Switch
}
from
'react-router-dom'
;
import
{
createHashHistory
}
from
'history'
;
...
...
@@ -56,8 +57,8 @@ export const RootRouter = () => {
</
Router
>
)
}
export
const
MainRoutes
=
()
=>
{
console
.
log
(
"mainRoutes"
)
return
(
<
Switch
>
{
...
...
@@ -78,3 +79,24 @@ export const MainRoutes = () => {
</
Switch
>
)
}
export
const
RedirectRoutes
=
()
=>
{
return
(
<
Switch
>
{
_
.
map
(
redirectRoutes
,
({
path
,
component
,
},
key
)
=>
{
return
<
Route
key=
{
key
}
path=
{
path
}
render=
{
()
=>
{
const
Component
=
component
;
return
<
Component
/>
}
}
/>
})
}
</
Switch
>
)
}
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