From 480bcbfcd31d40b7b676f7846f7f4d61ec2eb6f6 Mon Sep 17 00:00:00 2001 From: harukin-OneMix4 Date: Thu, 6 Jul 2023 04:18:07 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=AA=E3=83=95=E3=82=A1=E3=82=AF=E3=82=BF?= =?UTF-8?q?=E3=83=AA=E3=83=B3=E3=82=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/発車時刻表/LED_vidion.js | 74 +++++++++++++----------- menu.js | 18 +++--- 2 files changed, 48 insertions(+), 44 deletions(-) diff --git a/components/発車時刻表/LED_vidion.js b/components/発車時刻表/LED_vidion.js index ddf4636..9131d91 100644 --- a/components/発車時刻表/LED_vidion.js +++ b/components/発車時刻表/LED_vidion.js @@ -42,8 +42,7 @@ let diagramData = undefined; * 9062D 四国まんなか千年ものがたり(臨時?) */ export default function LED_vision(props) { - const { station, navigate, setTrainInfo, EachTrainInfoAsSR, trainDiagram } = - props; + const { station, setTrainInfo, EachTrainInfoAsSR, trainDiagram } = props; const [stationDiagram, setStationDiagram] = useState({}); //当該駅の全時刻表 const [currentTrain, setCurrentTrain] = useState([]); //現在在線中の全列車 { num: 列車番号, delay: 遅延時分(状態), Pos: 位置情報 } const [currentTrainLoading, setCurrentTrainLoading] = useState("loading"); // success, error, loading @@ -109,22 +108,26 @@ export default function LED_vision(props) { useInterval(getCurrentTrain, 15000); //15秒毎に全在線列車取得 const getTime = (stationDiagram, station) => { - const returnData = Object.keys(stationDiagram).map((d) => { - let a = {}; - stationDiagram[d].split("#").forEach((data) => { + const returnData = Object.keys(stationDiagram).map((trainNum) => { + let trainData = {}; + stationDiagram[trainNum].split("#").forEach((data) => { if (data.match("着")) { - a.lastStation = data.split(",着,")[0]; + trainData.lastStation = data.split(",着,")[0]; } if (data.split(",")[0] === station.Station_JP) { if (data.match(",発,")) { - a.time = data.split(",発,")[1]; + trainData.time = data.split(",発,")[1]; } else { - a.time = data.split(",着,")[1]; - a.lastStation = "当駅止"; + trainData.time = data.split(",着,")[1]; + trainData.lastStation = "当駅止"; } } }); - return { train: d, time: a.time, lastStation: a.lastStation }; + return { + train: trainNum, + time: trainData.time, + lastStation: trainData.lastStation, + }; }); return returnData.sort((a, b) => { switch (true) { @@ -342,10 +345,11 @@ const EachData = ({ onPress={() => openTrainInfo(d)} > @@ -358,14 +362,18 @@ const EachData = ({ ); }; -const TrainName = ({ train: s, trainIDSwitch, d, getTrainType }) => { - const { trainName, trainNumDistance } = s; - const { name, color } = getTrainType; - const { train } = d; +const TrainName = ({ + trainName, + trainNumDistance, + trainIDSwitch, + trainID, + type, +}) => { + const { name, color } = getTrainType(type); let TrainNumber = trainNumDistance != undefined ? `${ - parseInt(train.replace("M", "").replace("D", "")) - trainNumDistance + parseInt(trainID.replace("M", "").replace("D", "")) - trainNumDistance }号` : ""; return ( @@ -377,7 +385,7 @@ const TrainName = ({ train: s, trainIDSwitch, d, getTrainType }) => { fontWeight: "bold", }} > - {trainIDSwitch ? train : `${name} ${trainName}${TrainNumber}`} + {trainIDSwitch ? trainID : `${name} ${trainName}${TrainNumber}`} ); @@ -399,21 +407,19 @@ const LastStation = ({ lastStation }) => { ); }; -const DependTime = ({ time }) => { - return ( - - - {time} - - - ); -}; +const DependTime = ({ time }) => ( + + + {time} + + +); const checkDuplicateTrainData = (currentTrainArray) => { const notNyujoData = currentTrainArray.filter((d) => d.delay !== "入線"); diff --git a/menu.js b/menu.js index e41d917..26a86ec 100644 --- a/menu.js +++ b/menu.js @@ -245,7 +245,6 @@ export default function Menu(props) { station={ originalStationList && allStationData[selectedCurrentStation][0] } - navigate={navigate} setTrainInfo={setTrainInfo} EachTrainInfoAsSR={EachTrainInfoAsSR} trainDiagram={trainDiagram} @@ -652,14 +651,7 @@ const FixedContentBottom = (props) => { borderBottomRightRadius: 10, }} > - {((data) => - data.map((d) => ( - Linking.openURL(d.url)}> - {d.name} - - - - )))([ + {[ { url: "https://twitter.com/JRshikoku_eigyo", name: "JR四国営業部【公式】", @@ -708,7 +700,13 @@ const FixedContentBottom = (props) => { url: "https://twitter.com/Yoakemonogatari", name: "志国土佐 時代の夜明けのものがたり【公式】", }, - ])} + ].map((d) => ( + Linking.openURL(d.url)}> + {d.name} + + + + ))}