1
我想通過點擊一些調用方法來增加狀態值的文本來做分頁。狀態值然後傳遞給axios調用,然後調用下一頁。不過,我注意到,雖然狀態在渲染函數的console.log中增加了,但axios調用不會再次使用新的狀態值調用。任何人有任何想法我可以解決這個問題?問題與反應狀態不更新/遞增
constructor(props) {
super(props);
this.state = {
people: [],
planets: [],
page: 1
};
this.pageIncrementer = this.pageIncrementer.bind(this);
}
componentWillMount() {
let page = this.state.page;
axios({
method: 'GET',
url: `http://localhost:3008/people?_page=${page}&_limit=10`
}).then((response) => {
this.setState({
people: response
});
}).catch((error) => {
console.log('There is an error in the Card axios call for people: ', error);
})
axios({
method: 'GET',
url: `http://localhost:3008/planets?_page=${page}&_limit=10`
}).then((response) => {
this.setState({
planets: response
});
}).catch((error) => {
console.log('There is an error in the Card axios call for planets: ', error);
})
}
pageIncrementer() {
this.setState({
page: this.state.page + 1
});
}
你能給我一個從我的代碼中我將如何使用componentDid更新的例子?我不太熟悉它,並會非常感激。 – Milos
好吧給我一秒 –
我得到了分頁工作,但它似乎是在一個無限循環,沒有我甚至點擊下一頁按鈕。 NVM我知道了,謝謝你的幫助,我不得不添加一個if條件的componentdidmount來檢查狀態是否改變。 – Milos