結合処理を関数化

This commit is contained in:
harukin-OneMix4 2024-02-02 12:29:42 +09:00
parent e72cb03e08
commit edaa16cf35

View File

@ -77,6 +77,7 @@ export const EachTrainInfo = (props) => {
}, [trainData, showNearTrain]); }, [trainData, showNearTrain]);
const openBackTrainInfo = (stationInfo, currentTrainIndex) => { const openBackTrainInfo = (stationInfo, currentTrainIndex) => {
const migrationArray = (stationInfo) => {
const mainTrainStationPosition = trainData.findIndex( const mainTrainStationPosition = trainData.findIndex(
(d) => d.split(",")[0] == stationInfo (d) => d.split(",")[0] == stationInfo
); );
@ -99,54 +100,49 @@ export const EachTrainInfo = (props) => {
switch (relationMain) { switch (relationMain) {
case "head": case "head":
if (relationSub == "head") { if (relationSub == "head") {
break; return;
} else if (relationSub == "tail") { } else if (relationSub == "tail") {
const migrationTrainData = [ return [
...showNearTrain.slice(0, subTrainStationPosition), ...showNearTrain.slice(0, subTrainStationPosition),
...trainData, ...trainData,
]; ];
setTrainData(migrationTrainData);
} else if (relationSub == "middle") { } else if (relationSub == "middle") {
const migrationTrainData = [ return [
...showNearTrain.slice(0, subTrainStationPosition), ...showNearTrain.slice(0, subTrainStationPosition),
...trainData, ...trainData,
]; ];
setTrainData(migrationTrainData); } else return;
}
break;
case "tail": case "tail":
if (relationSub == "head") { if (relationSub == "head") {
const migrationTrainData = [ return [
...trainData.slice(0, mainTrainStationPosition), ...trainData.slice(0, mainTrainStationPosition),
...showNearTrain, ...showNearTrain,
]; ];
setTrainData(migrationTrainData);
} else if (relationSub == "tail") { } else if (relationSub == "tail") {
break; return;
} else if (relationSub == "middle") { } else if (relationSub == "middle") {
const migrationTrainData = [ return [
...trainData.slice(0, mainTrainStationPosition), ...trainData.slice(0, mainTrainStationPosition),
...showNearTrain.slice(subTrainStationPosition), ...showNearTrain.slice(subTrainStationPosition),
]; ];
setTrainData(migrationTrainData); } else return;
}
break;
case "middle": case "middle":
if (relationSub == "head") { if (relationSub == "head") {
const migrationTrainData = [ return [
...trainData.slice(0, mainTrainStationPosition), ...trainData.slice(0, mainTrainStationPosition),
...showNearTrain, ...showNearTrain,
]; ];
setTrainData(migrationTrainData);
} else if (relationSub == "tail") { } else if (relationSub == "tail") {
const migrationTrainData = [ return [
...showNearTrain.slice(0, subTrainStationPosition), ...showNearTrain.slice(0, subTrainStationPosition),
...trainData.slice(mainTrainStationPosition), ...trainData.slice(mainTrainStationPosition),
]; ];
setTrainData(migrationTrainData); } else return;
}
break;
} }
};
const array = migrationArray(stationInfo);
if (!array) return;
setTrainData(array);
setIsConcatNear(true); setIsConcatNear(true);
}; };