97 lines
2.2 KiB
JavaScript
97 lines
2.2 KiB
JavaScript
import React from 'react';
|
|
import { Route, Switch } from "react-router-dom";
|
|
import Loadable from "react-loadable";
|
|
import Loading from "../../Loading";
|
|
import { withRouter } from "react-router";
|
|
import { SnackbarHOC } from "educoder";
|
|
import { CNotificationHOC } from "../../modules/courses/common/CNotificationHOC";
|
|
import { TPMIndexHOC } from "../../modules/tpm/TPMIndexHOC";
|
|
const Infos = Loadable({
|
|
loader: () => import("./Infos"),
|
|
loading: Loading,
|
|
});
|
|
//forge项目
|
|
const Projects = Loadable({
|
|
loader: () => import('../Index'),
|
|
loading: Loading,
|
|
})
|
|
export default withRouter(
|
|
(CNotificationHOC()(SnackbarHOC()(TPMIndexHOC((props) => {
|
|
return (
|
|
<Switch>
|
|
|
|
<Route
|
|
path="/:username/statistics"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path="/:username/projects"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path="/:username/notice"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path="/:username/devops"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path="/:username/organizes"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path="/:username/watchers"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path="/:username/fan_users"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path="/:username/statistics"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
|
|
<Route
|
|
path={"/:owner/:projectsId"}
|
|
render={
|
|
(p) => {
|
|
return (<Projects {...props} {...p} />)
|
|
}
|
|
}>
|
|
|
|
</Route>
|
|
<Route
|
|
path="/:username"
|
|
render={(p) => (
|
|
<Infos {...props} {...p} />
|
|
)}
|
|
></Route>
|
|
</Switch>
|
|
)
|
|
}))))
|
|
) |