diff --git a/components/ActionSheetComponents/EachTrainInfoCore.js b/components/ActionSheetComponents/EachTrainInfoCore.js index 06d9fd9..6971081 100644 --- a/components/ActionSheetComponents/EachTrainInfoCore.js +++ b/components/ActionSheetComponents/EachTrainInfoCore.js @@ -277,15 +277,38 @@ export const EachTrainInfoCore = ({ setIsLandscape(true); } }, [width, height]); + const [trueTrainID, setTrueTrainID] = useState(); useEffect(() => { if (!data.trainNum) return; const TD = trainList[data.trainNum]; if (!TD) { + searchSpecialTrain(data.trainNum); setTrainData([]); return; } setTrainData(TD.split("#").filter((d) => d != "")); }, [data]); + const searchSpecialTrain = (trainNum) => { + const searchBase = trainNum.replace("S", "").replace("X", ""); + const search = (text) => { + const TD = trainList[searchBase + text]; + if (TD) { + return true; + } + return false; + }; + if (search("D")) setTrueTrainID(searchBase + "D"); + if (search("M")) setTrueTrainID(searchBase + "M"); + }; + const replaceSpecialTrainDetail = (trainNum) => { + let TD = trainList[trainNum]; + + if (TD) { + setTrainData(TD.split("#").filter((d) => d != "")); + return; + } + }; + useEffect(() => { //列車現在地アイコン表示スイッチ AS.getItem("trainPositionSwitch") @@ -517,7 +540,24 @@ export const EachTrainInfoCore = ({ source={require("../../assets/51690-loading-diamonds.json")} /> ほげほげふがふが */} - + {trainData.length == 0 && trueTrainID && ( + replaceSpecialTrainDetail(trueTrainID)} + style={{ + padding: 10, + flexDirection: "row", + borderColor: "blue", + borderWidth: 1, + margin: 10, + borderRadius: 5, + alignItems: "center", + }} + > + + 本来の列車情報を表示 + + + )} {trainData.map((i, index) => i.split(",")[1] == "提" ? (