Javascript 获取后,无法使用react挂钩(useState)查看状态的输出

Javascript 获取后,无法使用react挂钩(useState)查看状态的输出,javascript,reactjs,axios,fetch,Javascript,Reactjs,Axios,Fetch,我是一个新手,所以我确信我错过了一些非常简单的事情。我正在尝试完成一个简单的axios api获取,并将响应设置为一个状态。我可以在控制台日志中看到数据,但当我尝试将其设置为状态时,似乎什么都没有发生。在各种博客的帮助下,我尝试了useState、useEffect和useReducer方法,但我看不到结果,所以我肯定做得不对 编辑:我尝试在加载页面时执行此操作,而不是单击事件 我能够在react()上找到反例,以便在没有任何问题的情况下工作。我从几个博客上混合了一些例子,但看不到结果 最后,

我是一个新手,所以我确信我错过了一些非常简单的事情。我正在尝试完成一个简单的axios api获取,并将响应设置为一个状态。我可以在控制台日志中看到数据,但当我尝试将其设置为状态时,似乎什么都没有发生。在各种博客的帮助下,我尝试了useState、useEffect和useReducer方法,但我看不到结果,所以我肯定做得不对

编辑:我尝试在加载页面时执行此操作,而不是单击事件

我能够在react()上找到反例,以便在没有任何问题的情况下工作。我从几个博客上混合了一些例子,但看不到结果

最后,我希望将api中的数据合并到Material表ui中

任何有用的见解都将不胜感激。在过去的两天里,我一直在做这些

function LandingPage = () => {

    const [rows, setRows] = useState([]);
    useEffect(() => {
        console.log("ent useeffect")
        const fetchData = async () => {
          const result = await axios(
            window.location.origin + "/api/MESampleData",
          );
          console.log("before if")
          if(result){console.log(result)}
          console.log("before setrows")
          setRows(result.data);
        };
        fetchData();
      }, []);

return (
        <div className="section">
            {<h6>It should render</h6>}
            <ul>
                {rows.map(row => 
                    <li>{row.item1}</li>
                    )}
            </ul>
</div>)
}

export default LandingPage;
函数登录页=()=>{
const[rows,setRows]=useState([]);
useffect(()=>{
console.log(“ent-useffect”)
const fetchData=async()=>{
常量结果=等待axios(
window.location.origin+“/api/MESampleData”,
);
console.log(“在if之前”)
if(result){console.log(result)}
console.log(“在setrows之前”)
setRows(result.data);
};
fetchData();
}, []);
返回(
{它应该呈现}
    {rows.map(row=>
  • {row.item1}
  • )}
) } 导出默认登陆页面;

尝试将fetchData函数拉到useEffect之外,但继续调用useEffect内部的函数。

啊,废话。我现在明白你的意思了。我没有抓取正确的数据元素并将其放入setRows对象。我只是看到了结果数组,并认为这就是它

具体是什么
result
?您好-result是来自Axios fetch和result的响应。数据应该是一个记录数组。我问的是实际存在的内容,而不是预期的内容——例如,显示结果。如果有帮助,请查看示例输出屏幕打印。啊,废话。我现在明白你的意思了。我没有抓取正确的数据元素并将其放入setRows对象。我只是看到了结果数组,并认为这就是它。让我再次修复和部署。我之前已经尝试过,但没有成功