Reactjs 如何在useEffect中的操作调用后填充状态?
我试图在调用检索单个对象数据的操作后填充状态。我想直接将这些数据存储在该州Reactjs 如何在useEffect中的操作调用后填充状态?,reactjs,react-hooks,Reactjs,React Hooks,我试图在调用检索单个对象数据的操作后填充状态。我想直接将这些数据存储在该州 useEffect(() => { getProduct(id); }, [getProduct]); const [formData, setFormData] = useState({}); 我试着这样储存: const ProductEdit = ({getProduct, updateProduct, id, products}) => { useEffect(()
useEffect(() => {
getProduct(id);
}, [getProduct]);
const [formData, setFormData] = useState({});
我试着这样储存:
const ProductEdit = ({getProduct, updateProduct, id, products}) => {
useEffect(() => {
getProduct(id);
}, [getProduct]);
const [formData, setFormData] = useState({
name: '',
quantity: '',
price: '',
description: '',
category: '',
isImportant: ''
});
const {name, quantity, price, description} = formData;
products.product && setFormData(products.product);
您需要使用
useffect
hook来设置状态变量
constproductedit=({getProduct,updateProduct,id,products})=>{
useffect(()=>{
获取产品(id);
},[getProduct]);
常量[formData,setFormData]=useState({
名称:“”,
数量:“”,
价格:'',
说明:“”,
类别:“”,
I重要:“”
});
常量{名称、数量、价格、说明}=formData;
//此挂钩仅在“产品”更改时触发
useffect(()=>{
products.product&&setFormData(products.product);
},[产品];
}
您的代码在哪里执行products.product&&setFormData(products.product)
?在useState@zohaibijaz之后的函数中为什么要在render中设置状态变量?为什么不共享更多的代码以提供更好的效果understanding@ZohaibIjaz我编辑了问题中的代码