#javascript #reactjs #react-hooks
Вопрос:
componentDidUpdate()
{
let data ;
axios.get('http://localhost:8000/wel/')
.then(res => {
data = res.data;
this.setState( {
details: data
});
})
.catch(err => {})
}
Я хочу использовать один и тот же код для componentDidMount и для componentDidUpdate, но я не хочу повторять свой код(СУХОЕ правило).т. е. написание одних и тех же строк кода для обеих функций
Я новичок в реагировании 🙂
Ответ №1:
вы можете создать метод в своем компоненте и вызвать его в обоих местах:
class Comp {
doSomething() {
axios.get('http://localhost:8000/wel/')
.then(res => {
this.setState({ details: res.data });
})
.catch(err => {});
}
componentDidMount() {
this.doSomething();
}
componentDidUpdate() {
this.doSomething();
}
}