- 此问题在此处已有答案**:
Why is my variable unaltered after I modify it inside of a function? - Asynchronous code reference(7个答案)
The useState set method is not reflecting a change immediately(16个答案)
16小时前关门了。
为什么我通过我的API得到结果,但在我的控制台中记录了一个空数组[](不应该是空的)?
节点js代码:
app.get("/todos", async (req, res) => {
const todos = await todo.find()
res.json(todos)
})
React代码:
const [todos, setTodos] = useState([])
useEffect(() => {
GetTodos()
console.log(todos);
}, [])
const GetTodos = () => {
fetch(API_BASE + "/todos")
.then(res => res.json())
.then(data => setTodos(data))
.catch((err) => console.error("Error: ", err));
}
我所有的端点似乎都能在postman上工作,我只是不明白为什么react没有给出相同的结果
1条答案
按热度按时间jyztefdp1#
问题是我在useEffect钩子中登录到控制台,而不是在GetTodos()函数中,所以它只返回初始的useState值,但不知道为什么