initializeTrainPairListを移動
This commit is contained in:
parent
6300259e70
commit
4219e12164
@ -48,7 +48,7 @@ export const EachTrainInfo = (props) => {
|
||||
const [trainPositionSwitch, setTrainPositionSwitch] = useState("false");
|
||||
|
||||
const { currentTrain } = useCurrentTrain();
|
||||
const { trainPairData } = useBusAndTrainData();
|
||||
const { initializeTrainPairList } = useBusAndTrainData();
|
||||
|
||||
const [currentTrainData, setCurrentTrainData] = useState([]);
|
||||
const [nearTrainIDList, setNearTrainIDList] = useState([]);
|
||||
@ -57,10 +57,8 @@ export const EachTrainInfo = (props) => {
|
||||
|
||||
//裏列車探索
|
||||
useEffect(() => {
|
||||
const trainPairList = {};
|
||||
trainPairData.forEach((d) => {
|
||||
trainPairList[Object.keys(d)[0]] = d[Object.keys(d)[0]];
|
||||
});
|
||||
const trainPairList = initializeTrainPairList();
|
||||
|
||||
const returnArray = [];
|
||||
if (!data.trainNum) return;
|
||||
if (trainPairList[data.trainNum]) {
|
||||
@ -89,33 +87,45 @@ export const EachTrainInfo = (props) => {
|
||||
}, [data]);
|
||||
|
||||
const openBackTrainInfo = (stationInfo, currentTrainIndex) => {
|
||||
console.log(trainData);
|
||||
console.log(showNearTrain);
|
||||
const stationPosition = showNearTrain.findIndex(
|
||||
console.log(trainData); //trainDataは現在の列車の停車駅リスト
|
||||
console.log(showNearTrain); //showNearTrainは裏列車の停車駅リスト
|
||||
const mainTrainStationPosition = trainData.findIndex(
|
||||
(d) => d.split(",")[0] == stationInfo
|
||||
);
|
||||
const relationBackTrain =
|
||||
stationPosition == 0
|
||||
const relationMain =
|
||||
mainTrainStationPosition == 0
|
||||
? "head"
|
||||
: stationPosition == showNearTrain.length - 1
|
||||
: mainTrainStationPosition == trainData.length - 1
|
||||
? "tail"
|
||||
: "middle";
|
||||
if (relationBackTrain === "head") {
|
||||
console.log(relationMain);
|
||||
|
||||
const subTrainStationPosition = showNearTrain.findIndex(
|
||||
(d) => d.split(",")[0] == stationInfo
|
||||
);
|
||||
const relationSub =
|
||||
subTrainStationPosition == 0
|
||||
? "head"
|
||||
: subTrainStationPosition == showNearTrain.length - 1
|
||||
? "tail"
|
||||
: "middle";
|
||||
console.log(relationSub);
|
||||
if (relationSub === "head") {
|
||||
const migrationTrainData = [
|
||||
...trainData.slice(0, currentTrainIndex),
|
||||
...showNearTrain,
|
||||
];
|
||||
setTrainData(migrationTrainData);
|
||||
} else if (relationBackTrain === "tail") {
|
||||
} else if (relationSub === "tail") {
|
||||
const migrationTrainData = [
|
||||
...showNearTrain.slice(0, showNearTrain.length - 1),
|
||||
...trainData.slice(currentTrainIndex),
|
||||
];
|
||||
setTrainData(migrationTrainData);
|
||||
} else if (relationBackTrain === "middle") {
|
||||
} else if (relationSub === "middle") {
|
||||
const migrationTrainData = [
|
||||
...trainData.slice(0, currentTrainIndex),
|
||||
...showNearTrain.slice(0, stationPosition),
|
||||
...showNearTrain.slice(0, subTrainStationPosition),
|
||||
...trainData.slice(currentTrainIndex),
|
||||
];
|
||||
setTrainData(migrationTrainData);
|
||||
|
@ -4,6 +4,7 @@ const initialState = {
|
||||
setBusAndTrainData: () => {},
|
||||
trainPairData: [],
|
||||
setTrainPairData: () => {},
|
||||
initializeTrainPairList: () => {},
|
||||
};
|
||||
|
||||
const BusAndTrainDataContext = createContext(initialState);
|
||||
@ -15,7 +16,13 @@ export const useBusAndTrainData = () => {
|
||||
export const BusAndTrainDataProvider = ({ children }) => {
|
||||
const [busAndTrainData, setBusAndTrainData] = useState([]);
|
||||
const [trainPairData, setTrainPairData] = useState([]);
|
||||
|
||||
const initializeTrainPairList = () => {
|
||||
const trainPairList = {};
|
||||
trainPairData.forEach((d) => {
|
||||
trainPairList[Object.keys(d)[0]] = d[Object.keys(d)[0]];
|
||||
});
|
||||
return trainPairList;
|
||||
};
|
||||
return (
|
||||
<BusAndTrainDataContext.Provider
|
||||
value={{
|
||||
@ -23,6 +30,7 @@ export const BusAndTrainDataProvider = ({ children }) => {
|
||||
setBusAndTrainData,
|
||||
trainPairData,
|
||||
setTrainPairData,
|
||||
initializeTrainPairList,
|
||||
}}
|
||||
>
|
||||
{children}
|
||||
|
Loading…
Reference in New Issue
Block a user