forgeplus-react-v2/src/forums/index.jsx

58 lines
1.5 KiB
JavaScript

import React from "react";
import { ImageLayerOfCommentHOC } from "../modules/page/layers/ImageLayerOfCommentHOC";
import { Route, Switch, withRouter } from "react-router";
import { SnackbarHOC } from "educoder";
import { CNotificationHOC } from "../modules/courses/common/CNotificationHOC";
import { TPMIndexHOC } from "../modules/tpm/TPMIndexHOC";
import Loadable from 'react-loadable';
import Loading from "../Loading";
const Detail = Loadable({
loader : () => import("./detail"),
loading: Loading,
})
const List = Loadable({
loader : () => import("./list"),
loading: Loading,
})
const Editor = Loadable({
loader : () => import("./edit"),
loading: Loading,
})
function SoftBot(props){
return <div>
<Switch {...props}>
<Route
path="/forums/add"
render={(p) => (
<Editor {...props} {...p} />
)}
></Route>
<Route
path="/forums/:id/edit"
render={(p) => (
<Editor {...props} {...p} />
)}
></Route>
<Route
path="/forums/:id"
render={(p) => (
<Detail {...props} {...p} />
)}
></Route>
<Route
path="/forums"
render={(p) => (
<List {...props} {...p} />
)}
></Route>
</Switch>
</div>
}
export default withRouter(
ImageLayerOfCommentHOC({
imgSelector: ".imageLayerParent img, .imageLayerParent .imageTarget",
parentSelector: ".newMain",
})(CNotificationHOC()(SnackbarHOC()(TPMIndexHOC(SoftBot))))
);