1
0
mirror of https://github.com/Radarr/Radarr.git synced 2026-04-19 21:46:50 -04:00

Avoid fetching movies twice on initial load

This commit is contained in:
Bogdan
2025-03-29 19:25:45 +02:00
parent 6e68a91922
commit 74d2259f67
2 changed files with 10 additions and 3 deletions
@@ -1,7 +1,6 @@
import React, { useEffect } from 'react'; import React, { useEffect } from 'react';
import { useSelector } from 'react-redux'; import { useSelector } from 'react-redux';
import { useParams } from 'react-router'; import { useHistory, useParams } from 'react-router';
import { useHistory } from 'react-router-dom';
import NotFound from 'Components/NotFound'; import NotFound from 'Components/NotFound';
import usePrevious from 'Helpers/Hooks/usePrevious'; import usePrevious from 'Helpers/Hooks/usePrevious';
import createAllMoviesSelector from 'Store/Selectors/createAllMoviesSelector'; import createAllMoviesSelector from 'Store/Selectors/createAllMoviesSelector';
+9 -1
View File
@@ -6,6 +6,7 @@ import React, {
useState, useState,
} from 'react'; } from 'react';
import { useDispatch, useSelector } from 'react-redux'; import { useDispatch, useSelector } from 'react-redux';
import { useHistory } from 'react-router';
import { SelectProvider } from 'App/SelectContext'; import { SelectProvider } from 'App/SelectContext';
import ClientSideCollectionAppState from 'App/State/ClientSideCollectionAppState'; import ClientSideCollectionAppState from 'App/State/ClientSideCollectionAppState';
import MoviesAppState, { MovieIndexAppState } from 'App/State/MoviesAppState'; import MoviesAppState, { MovieIndexAppState } from 'App/State/MoviesAppState';
@@ -76,6 +77,8 @@ interface MovieIndexProps {
} }
const MovieIndex = withScrollPosition((props: MovieIndexProps) => { const MovieIndex = withScrollPosition((props: MovieIndexProps) => {
const history = useHistory();
const { const {
isFetching, isFetching,
isPopulated, isPopulated,
@@ -107,7 +110,12 @@ const MovieIndex = withScrollPosition((props: MovieIndexProps) => {
const [isSelectMode, setIsSelectMode] = useState(false); const [isSelectMode, setIsSelectMode] = useState(false);
useEffect(() => { useEffect(() => {
dispatch(fetchMovies()); if (history.action === 'PUSH') {
dispatch(fetchMovies());
}
}, [history, dispatch]);
useEffect(() => {
dispatch(fetchQueueDetails({ all: true })); dispatch(fetchQueueDetails({ all: true }));
}, [dispatch]); }, [dispatch]);