|
@@ -10,16 +10,18 @@ import { baseUrl } from ".";
|
|
import classNames from "classnames";
|
|
import classNames from "classnames";
|
|
import Z1Search from "./pages/Z1Search";
|
|
import Z1Search from "./pages/Z1Search";
|
|
import B1Card from "./pages/B1Card";
|
|
import B1Card from "./pages/B1Card";
|
|
|
|
+import { useSelector } from "react-redux";
|
|
|
|
+import store, { RootState } from "./store";
|
|
const A1Home = React.lazy(() => import("./pages/A1Home"));
|
|
const A1Home = React.lazy(() => import("./pages/A1Home"));
|
|
const B1Village = React.lazy(() => import("./pages/B1Village"));
|
|
const B1Village = React.lazy(() => import("./pages/B1Village"));
|
|
const C1Architec = React.lazy(() => import("./pages/C1Architec"));
|
|
const C1Architec = React.lazy(() => import("./pages/C1Architec"));
|
|
const D1Build = React.lazy(() => import("./pages/D1Build"));
|
|
const D1Build = React.lazy(() => import("./pages/D1Build"));
|
|
|
|
|
|
const tabList = [
|
|
const tabList = [
|
|
- { id: 1, name: "总览", path: "/" },
|
|
|
|
- { id: 2, name: "村落", path: "/village" },
|
|
|
|
- { id: 3, name: "建筑", path: "/architec" },
|
|
|
|
- { id: 4, name: "构件", path: "/build" },
|
|
|
|
|
|
+ { id: 1, name: "总览", pathUrl: "/", path: "/" },
|
|
|
|
+ { id: 2, name: "村落", pathUrl: "/village", path: "/village" },
|
|
|
|
+ { id: 3, name: "建筑", pathUrl: "/architec?id=1", path: "/architec" },
|
|
|
|
+ { id: 4, name: "构件", pathUrl: "/build?id=1", path: "/build" },
|
|
];
|
|
];
|
|
|
|
|
|
export default function App() {
|
|
export default function App() {
|
|
@@ -29,7 +31,9 @@ export default function App() {
|
|
const [searchShow, setSearchShow] = useState(false);
|
|
const [searchShow, setSearchShow] = useState(false);
|
|
|
|
|
|
// 顶部tab的展开和收起
|
|
// 顶部tab的展开和收起
|
|
- const [tabShow, setTabShow] = useState(true);
|
|
|
|
|
|
+ const homeTabShow = useSelector(
|
|
|
|
+ (state: RootState) => state.A0Layout.homeTabShow
|
|
|
|
+ );
|
|
|
|
|
|
// 视频的播放
|
|
// 视频的播放
|
|
const [videoShow, setVideoShow] = useState(false);
|
|
const [videoShow, setVideoShow] = useState(false);
|
|
@@ -51,9 +55,9 @@ export default function App() {
|
|
}, []);
|
|
}, []);
|
|
|
|
|
|
// 顶部tab的切换
|
|
// 顶部tab的切换
|
|
- const cutTab = useCallback((id: number, path: string) => {
|
|
|
|
|
|
+ const cutTab = useCallback((id: number, pathUrl: string) => {
|
|
if (id !== 2) {
|
|
if (id !== 2) {
|
|
- history.push(path);
|
|
|
|
|
|
+ history.push(pathUrl);
|
|
setTab2Show(false);
|
|
setTab2Show(false);
|
|
} else setTab2Show(true);
|
|
} else setTab2Show(true);
|
|
}, []);
|
|
}, []);
|
|
@@ -97,11 +101,11 @@ export default function App() {
|
|
<div
|
|
<div
|
|
className="Apptab"
|
|
className="Apptab"
|
|
style={{ backgroundImage: `url(${baseUrl}/A1Home/pc/tab.png)` }}
|
|
style={{ backgroundImage: `url(${baseUrl}/A1Home/pc/tab.png)` }}
|
|
- hidden={!tabShow}
|
|
|
|
|
|
+ hidden={!homeTabShow}
|
|
>
|
|
>
|
|
{tabList.map((v) => (
|
|
{tabList.map((v) => (
|
|
<div
|
|
<div
|
|
- onClick={() => cutTab(v.id, v.path)}
|
|
|
|
|
|
+ onClick={() => cutTab(v.id, v.pathUrl)}
|
|
className={classNames(
|
|
className={classNames(
|
|
"ApptabRow",
|
|
"ApptabRow",
|
|
(routerAc === "#/" && v.id === 1 && !tab2Show) ||
|
|
(routerAc === "#/" && v.id === 1 && !tab2Show) ||
|
|
@@ -121,14 +125,21 @@ export default function App() {
|
|
<div className="APPtabSearch" onClick={() => setSearchShow(true)}></div>
|
|
<div className="APPtabSearch" onClick={() => setSearchShow(true)}></div>
|
|
|
|
|
|
{/* 展开和收起按钮 */}
|
|
{/* 展开和收起按钮 */}
|
|
- <div className="APPtabShow" onClick={() => setTabShow(false)}></div>
|
|
|
|
|
|
+ <div
|
|
|
|
+ className="APPtabShow"
|
|
|
|
+ onClick={() =>
|
|
|
|
+ store.dispatch({ type: "layout/setHomeTab", payload: false })
|
|
|
|
+ }
|
|
|
|
+ ></div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
{/* 展开按钮 */}
|
|
{/* 展开按钮 */}
|
|
<div
|
|
<div
|
|
className="APPtabHide"
|
|
className="APPtabHide"
|
|
- onClick={() => setTabShow(true)}
|
|
|
|
- hidden={tabShow}
|
|
|
|
|
|
+ onClick={() =>
|
|
|
|
+ store.dispatch({ type: "layout/setHomeTab", payload: true })
|
|
|
|
+ }
|
|
|
|
+ hidden={homeTabShow}
|
|
></div>
|
|
></div>
|
|
|
|
|
|
{/* 点击搜索出来的页面 */}
|
|
{/* 点击搜索出来的页面 */}
|
|
@@ -142,12 +153,6 @@ export default function App() {
|
|
// 从卡片里面点击 进入村落
|
|
// 从卡片里面点击 进入村落
|
|
setTab2Show(false);
|
|
setTab2Show(false);
|
|
history.push(`/village?id=${id}`);
|
|
history.push(`/village?id=${id}`);
|
|
- // if (routerAc.includes("#/village")) {
|
|
|
|
- // // 已经在村落路由页面了,直接隐藏
|
|
|
|
- // setTab2Show(false);
|
|
|
|
- // } else {
|
|
|
|
- // history.push(`/village?id=${id}`);
|
|
|
|
- // }
|
|
|
|
}}
|
|
}}
|
|
/>
|
|
/>
|
|
|
|
|