我有一个组件,该组件具有一个项目列表,根据用户点击的项目,它会将它们带入第二个组件,该组件根据从前一个组件接收的道具来呈现信息。
在第二个组件中,我有一个基于从上一个组件收到的道具的API调用,一旦组件安装,就会调用该API。
async getItem() {
let req = await fetch(API_URL + '/items/item/' + this.props.location.itemID)
let response = await req.json()
// Does other things
}
componentDidMount() {
this.getItem()
}
我的问题是,如果用户刷新第二个组件,则会出现未处理的拒绝,因为第二个组件不知道itemID属性是什么或用户从何处“刷新”。 在不重新架构整个事情的情况下,我该如何处理呢?
如果有关系,我可以使用react-router-dom
并通过to=
道具传递道具,就像to={{pathname: '/item', itemID: item.id}}