【发布时间】:2021-11-09 16:05:24
【问题描述】:
我想在从数据库中获取类别后更新类别数组的值/插入类别 json 数据。 但是找不到正确的方法? 注意:请检查 loadCategories 函数。
import React, {useEffect, useState} from "react";
import {getCategories} from "../../../Functions/Categoy";
const initialState = {
title:"",
desc:"",
colors:["Black", "Brown", "Silver", "White", "Blue"],
categories:[] // here to insert
}
const CreateProducts = () => {
const [data, setData] = useState([initialState]);
const { title, desc, colors, categories } = data
useEffect(() => {
loadCategories();
}, [])
const loadCategories = () => {
getCategories()
.then((res) => {
// here I want to insert/update categories value
// setData({ prevState => [...prevState, categories : res.data] })
})
};
return (
<div>{JSON.stringify(categories)}</div>
)}
export default CreateProducts;
【问题讨论】:
-
状态最终会保存其他任何东西,还是只是一个类别数组?
-
@Andy 是的。我编辑了这些部分,请检查一下。
-
状态好像只指一种产品,对吗?一种产品有很多类别。
-
是的,我正在创建动态表单。实际上,我正在寻找负载类别中的解决方案,我在 setData 中更新类别。
-
我会选择@Andy 的解决方案,因为这似乎是正确的,我也建议这样做,但我不确定你为什么认为它不起作用。如果“创建动态表单”与您的问题/问题相关,并且您不需要像您在帖子中询问的那样简单地更新嵌套的
categories数组,那么请更新您的问题以包含所有必要和相关的代码和上下文/您尝试解决的实际问题的详细信息。
标签: javascript node.js reactjs react-hooks use-state