【发布时间】:2021-11-16 12:10:54
【问题描述】:
将状态设置为空对象
const [categories, setCategories] = useState({});
进行 axios 调用并设置状态。我检查并 res 返回正确的数据。
const res = await axios.get(`${API}/categories`);
setCategories(res.data);
};
useEffect(() => {
getCategories()
},[])
创建表单并尝试填充选择栏
<h1>Add New Item</h1>
<section className="form">
<form>
<label htmlFor="category">Category: </label>
<select id="category" required>
<option disabled selected value>
Select A Category
</option>
{Object.keys(categories).map((category) => (
<option value={category.category_id}>{category.name}</option>
))} {console.log(categories)}
</select>
</form>
</section>
【问题讨论】:
-
有什么问题?
-
能否请您显示来自 API 调用的响应 (const res = await axios.get(
${API}/categories)) -
有什么问题?请为您遇到的问题提供更多详细信息和背景信息,以及您要求这里的任何人帮助您解决的问题。此外,不要将渲染控制台登录作为无意的副作用,它对于做出任何类型的断言都是不可靠的。
标签: javascript html reactjs select