From 88c0e24c58dd186b45dbb84f4b623134638531d2 Mon Sep 17 00:00:00 2001 From: Bogdan Date: Wed, 2 Aug 2023 03:02:25 +0300 Subject: [PATCH] Fixed: Clear movie search results when navigating to another page (cherry picked from commit 67dc8987970aa2a9eade48c02ae72be1851fa196) --- .../MovieInteractiveSearchModalConnector.js | 46 ++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/frontend/src/Movie/Search/MovieInteractiveSearchModalConnector.js b/frontend/src/Movie/Search/MovieInteractiveSearchModalConnector.js index f00b1cb4d..9f53b712f 100644 --- a/frontend/src/Movie/Search/MovieInteractiveSearchModalConnector.js +++ b/frontend/src/Movie/Search/MovieInteractiveSearchModalConnector.js @@ -1,9 +1,19 @@ +import PropTypes from 'prop-types'; +import React, { Component } from 'react'; import { connect } from 'react-redux'; import { cancelFetchReleases, clearReleases } from 'Store/Actions/releaseActions'; import MovieInteractiveSearchModal from './MovieInteractiveSearchModal'; function createMapDispatchToProps(dispatch, props) { return { + dispatchCancelFetchReleases() { + dispatch(cancelFetchReleases()); + }, + + dispatchClearReleases() { + dispatch(clearReleases()); + }, + onModalClose() { dispatch(cancelFetchReleases()); dispatch(clearReleases()); @@ -12,4 +22,38 @@ function createMapDispatchToProps(dispatch, props) { }; } -export default connect(null, createMapDispatchToProps)(MovieInteractiveSearchModal); +class MovieInteractiveSearchModalConnector extends Component { + + // + // Lifecycle + + componentWillUnmount() { + this.props.dispatchCancelFetchReleases(); + this.props.dispatchClearReleases(); + } + + // + // Render + + render() { + const { + dispatchCancelFetchReleases, + dispatchClearReleases, + ...otherProps + } = this.props; + + return ( + + ); + } +} + +MovieInteractiveSearchModalConnector.propTypes = { + ...MovieInteractiveSearchModal.propTypes, + dispatchCancelFetchReleases: PropTypes.func.isRequired, + dispatchClearReleases: PropTypes.func.isRequired +}; + +export default connect(null, createMapDispatchToProps)(MovieInteractiveSearchModalConnector);