【发布时间】:2021-04-10 02:57:43
【问题描述】:
我将从我点击的帖子的 id 中获取一个 api,并在 react-hooks 中创建一个模式 我希望 url 的最后一部分有 id。
让 url = https://www.thecocktaildb.com/api/json/v1/1/lookup.php?i=${id}
我知道如何使用 Params 带上 id。但是不应该将其添加到路由器中吗?我不是在创建新页面,而是在创建模式。当我单击主页上的帖子时,会出现模态。这和Route函数到新地址不一样吗?
如何根据点击的id获取API?
import React, { useState, useEffect } from "react";
import { useParams } from "react-router-dom";
import axios from "axios";
const { id } = useParams();
const [data, setData] = useState([]);
useEffect(() => {
let url = `https://www.thecocktaildb.com/api/json/v1/1/lookup.php?i=${id}`;
axios
.get(url)
.then((res) => {
setData(res.data.drinks);
})
.catch((error) => {
console.log(error);
});
console.log(data);
}, [id]);
【问题讨论】:
标签: reactjs api react-hooks modal-dialog