forgeplus-react/src/forge/users/Index.jsx

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>
)
}))))
)