From ff7b069ad9762867a99b30d6585510b2543cd6f7 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期五, 19 四月 2024 10:29:16 +0800
Subject: [PATCH] #
---
zy-asrs-flow/src/pages/map/index.jsx | 65 +++++++++++++++++++++-----------
1 files changed, 42 insertions(+), 23 deletions(-)
diff --git a/zy-asrs-flow/src/pages/map/index.jsx b/zy-asrs-flow/src/pages/map/index.jsx
index 9df4740..0d84c56 100644
--- a/zy-asrs-flow/src/pages/map/index.jsx
+++ b/zy-asrs-flow/src/pages/map/index.jsx
@@ -84,26 +84,29 @@
const prevCurSpriteRef = React.useRef();
// init func
- React.useEffect(async () => {
- player = new Player(mapRef.current, styles.dark, didClickSprite);
- setApp(player.app);
- setMapContainer(player.mapContainer);
- Utils.syncApp(player.app);
- Utils.syncMapContainer(player.mapContainer);
+ React.useEffect(() => {
+ const initialize = async () => {
+ player = new Player(mapRef.current, styles.dark, didClickSprite);
+ setApp(player.app);
+ setMapContainer(player.mapContainer);
+ Utils.syncApp(player.app);
+ Utils.syncMapContainer(player.mapContainer);
- const handleResize = () => {
- setWindowSize({
- width: window.innerWidth,
- height: window.innerHeight,
- });
- };
- window.addEventListener('resize', handleResize);
- await Utils.fetchMapData(intl);
- setDataFetched(true);
- setModel(MapModel.OBSERVER_MODEL)
- setTimeout(() => {
- player.adaptScreen();
- }, 200)
+ const handleResize = () => {
+ setWindowSize({
+ width: window.innerWidth,
+ height: window.innerHeight,
+ });
+ };
+ window.addEventListener('resize', handleResize);
+ await Utils.fetchMapData(intl);
+ setDataFetched(true);
+ setModel(MapModel.OBSERVER_MODEL)
+ setTimeout(() => {
+ player.adaptScreen();
+ }, 200)
+ }
+ initialize();
}, []);
// resize
@@ -124,7 +127,6 @@
if (!mapContainer && !dataFetched) {
return;
}
-
switch (model) {
case MapModel.OBSERVER_MODEL:
@@ -134,6 +136,7 @@
player.activateMapEvent(null);
Utils.removeSelectedEffect();
+ setCurSPrite(null);
setDeviceVisible(false);
setSettingsVisible(false);
@@ -253,7 +256,7 @@
/>
)}
</Col>
- <Col span={12} style={{ backgroundColor: '#4a69bd' }}>
+ <Col span={12} style={{ backgroundColor: styles.dark ? '#2C3A47' : '#4a69bd' }}>
<Flex className={styles.flex} gap={'large'} justify={'flex-end'} align={'center'}>
{model === MapModel.OBSERVER_MODEL && (
@@ -261,8 +264,24 @@
<Button
className='map-header-button'
size={'large'}
- onClick={() => {
- Utils.fetchMapData(intl);
+ onClick={async () => {
+ await Utils.fetchMapData(intl);
+
+ player.hideGridlines();
+ player.hideStarryBackground();
+
+ player.activateMapEvent(null);
+
+ Utils.removeSelectedEffect();
+ setCurSPrite(null);
+ setDeviceVisible(false);
+ setSettingsVisible(false);
+ setDrawerVisible(false);
+
+ mapContainer.children.forEach(child => {
+ Utils.viewFeature(child, setCurSPrite);
+ })
+
}}
>
<FormattedMessage id='map.load' defaultMessage='鍔犺浇鍦板浘' />
--
Gitblit v1.9.1