【发布时间】:2021-08-28 12:34:12
【问题描述】:
我有 3 个组件/页面 Home、page1、page2,我正在从 home 发送道具并调用 page1
<Link
style={{ textDecoration: "none", color: "inherit" }}
to={{
pathname: "/page1",
Props: { categoryID: val.id, categoryName: val.name }
}}
/>;
那么第1页就是在构造函数中获取这些props并定义状态
class BuyerItems extends Component{
constructor(props) {
super(props);
this.state = {
id: props.location.aboutProps.categoryID,
name: props.location.aboutProps.categoryName,
gigs:[],
}
this.getGigs();
}
现在,如果我通过链接转到 page2,然后按浏览器后退按钮,则会出现以下错误
TypeError:无法读取未定义的属性“categoryID”
【问题讨论】:
-
单击后退按钮将导致页面重新加载,因此保存在浏览器内存中的所有状态都将丢失,以防止您需要保留可以在 localStorage 中执行的状态
-
你能解释一下如何保持这些状态
标签: reactjs