首页 > 解决方案 > useSate 不在 axios 承诺中执行

问题描述

这是反应组件的一部分

  const listId = props.listId;
  const [list, setList] = useState({});
  useEffect(() => {
    let isMounted = true;
    axios.get(`http://localhost:9000/lists/${listId}`).then((res) => {
      if (isMounted) {
        setList({ ...res.data });
      }
    });
    return () => {
      isMounted = false;
    };
  });

由于某种原因,setList 没有执行

标签: reactjsaxiosuse-effectuse-state

解决方案


看看这个代码框,它工作正常。

代码沙盒链接:https ://codesandbox.io/s/interesting-bush-5v3hf?file=/src/App.js


推荐阅读