From 0b4e4a90bc1cc083144faaa89ed5a2563481d757 Mon Sep 17 00:00:00 2001 From: Qstick Date: Sun, 2 Sep 2018 02:44:58 -0400 Subject: [PATCH] Fixed: Prevent Albums page from making double API calls --- frontend/src/Album/Details/AlbumDetailsPageConnector.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/frontend/src/Album/Details/AlbumDetailsPageConnector.js b/frontend/src/Album/Details/AlbumDetailsPageConnector.js index 158906939..776fa8a6d 100644 --- a/frontend/src/Album/Details/AlbumDetailsPageConnector.js +++ b/frontend/src/Album/Details/AlbumDetailsPageConnector.js @@ -34,6 +34,10 @@ const mapDispatchToProps = { class AlbumDetailsPageConnector extends Component { + constructor(props) { + super(props); + this.state = { hasMounted: false }; + } // // Lifecycle @@ -50,6 +54,7 @@ class AlbumDetailsPageConnector extends Component { populate = () => { const foreignAlbumId = this.props.foreignAlbumId; + this.setState({ hasMounted: true }); this.props.fetchAlbums({ foreignAlbumId }); } @@ -75,7 +80,7 @@ class AlbumDetailsPageConnector extends Component { ); } - if (isAlbumsFetching) { + if (isAlbumsFetching || !this.state.hasMounted) { return ( ); @@ -87,7 +92,7 @@ class AlbumDetailsPageConnector extends Component { ); } - if (!isAlbumsFetching && isAlbumsPopulated) { + if (!isAlbumsFetching && isAlbumsPopulated && this.state.hasMounted) { return (