【发布时间】:2021-08-03 16:30:14
【问题描述】:
如何在路由切换时将状态重置为初始值?
在这个组件中,我使用useContext() 来获取状态searchedMovie。我希望在第一次呈现 MoviePage 组件时将其设为默认值。但是,现在它的值是从父组件传递的
import { useContext } from 'react';
import Topbar from '../Header/Topbar';
import MovieContent from '../Pages/MovieContent';
import Catalog from '../Catalog/Catalog';
import { MoviesContext } from "../../services/context";
import './Pages.scss';
const MoviePage = (props: any) => {
const { searchedMovie } = useContext(MoviesContext);
return (
<>
<Topbar></Topbar>
{searchedMovie === '' ? <MovieContent></MovieContent> : <Catalog></Catalog>}
</>
);
}
export default MoviePage;
【问题讨论】:
-
也许你应该包括你想要“修复”的相关代码,即你想要
searchMovie值重置的MoviesContext代码,以及你的路由代码和逻辑。
标签: javascript reactjs react-router