Я начинающий с React. У меня есть 2 разных случая, когда я использую React Hooks, и я не могу правильно получить данные из своего локального API.
Случай 1:
export const RegisterT = () => {
const [test, setTest] = useState()
const addrState = {}
axios.get('http://127.0.0.1:3333/states', { addrState })
.then(res => {
setTest(res.data)
console.log(test)
})
...
}
Он работает с состоянием test
правильно отображать контент из API, но я не знаю, почему / как Axios продолжает называть API бесконечностью - бесконечно. (PS: при первом же вызове он возвращает undefined, затем при следующем работает). Что я делаю не так?
Чтобы исправить это, я пытался использовать useEffect
вот так (Случай 2):
export const RegisterT = () => {
const [test, setTest] = useState()
const addrState = {}
useEffect(() => {
axios.get('http://127.0.0.1:3333/states', { addrState })
.then(res => {
setTest(res.data)
console.log(test);
})
}, [])
...
}
Теперь Axios работает только один раз, но данные не поступают из API. Может быть, я должен использовать async / wait для этого случая, но я не могу заставить его работать. Кто-нибудь знает, как это исправить (Случай 1 и / или Случай 2)?
Спасибо.