【发布时间】:2021-12-16 22:54:30
【问题描述】:
我是 react 新手,我正在尝试向我自己的 API 发出 GET 请求,然后在屏幕上呈现结果。当我这样做时,我console.log 我的结果也是如此,并且在控制台中我得到了正确的结果,但我不能把它放在我的屏幕上。我为此使用了useState。
我的代码:
const url = "http://localhost:2000/appShop";
const [shop, showShop] = useState("");
const getShop = () => {
Axios.get(url).then((response) => {
console.log(response);
showShop(response.data.name + response.data.address + response.data.city);
});
};
<Box
sx={{
"& > :not(style)": { m: 1, width: "25ch" },
}}
>
<span>{shop}</span>
<Button onClick={getShop}>List all Shops</Button>
<Button onClick={() => showShopCard(false)}>Close</Button>
</Box>
我在控制台中得到它,但不是在我的屏幕上
【问题讨论】:
-
你应该归还你的
-
@NiceBooks 你能说得更具体点吗?
-
response.data是一个数组,如您的日志所示,它没有name、address等。您得到NaN,因为您有undefined + undefined + undefined -
@tromgy 但那我该怎么办呢?认为我的路径“response.data”是正确的
-
已解决@NiceBooks,谢谢。是的,我确实退回了盒子,我只是没有在这里复制它
标签: reactjs api axios request frontend