【发布时间】:2020-02-04 16:30:24
【问题描述】:
我正在从 react-router-dom 通过我的链接上的“to”道具发送一个带有几个参数的对象。最初,当点击链接时,数据很好,道具也有价值。一旦我刷新它们是未定义的。
这是链接...
let newTo = {
pathname: `/poke/${name}`,
param1: name
}
const { name } = this.props;
<Link style={viewBtn} to={newTo}>View</Link>
如果重要的话,这里是路线......
<Route path="/poke/:pokemon" component={PokeSummary} />
这是我接收道具的其他组件上的代码...
constructor(props) {
super(props)
this.state = {
paramName: props.location.param1,
pokemon: {
id: 0,
name: '',
},
isLoading: false
}
}
componentDidMount() {
this.fetchData(this.state.paramName)
}
fetchData = (nameP) => {
fetch(`https://pokeapi.co/api/v2/pokemon/${nameP}`)
.then(res => res.json())
.then(data => this.setState({
pokemon: {
id: data.id,
name: data.name,
}
}, () => {console.log(this.state.pokemon)}))
}
谢谢!
【问题讨论】:
标签: javascript reactjs fetch