繁体   English   中英

如何更新已保存在 const 中的组件的 prop

[英]How to update a component's prop which has been saved in a const

我有一个像这样的父组件:

function parentComponent(){
     const [selectedValue,setSelectedValue] = useState();
     
     const [renderComponent,setRenderComponent] =[
           {
            name:'A' ,
            component : <ChildComponent values={selectedValue}/>
           },
           {
            name:'B' ,
            component : <OtherComponent/>
           },
     ]
     
    useEffect(()=>{
    
     const response = api('someapi');
     //i can get the response correctly and save it to state
     if(response.status===200){
     setSelectedValue(response.data);
     }
    },[])

    return <>{renderComponent[0].component}</>
     
}

我的子组件是:

function childComponent({values}){
console.log('Props value is : ', values)

return <h3>Something</h3>

}

问题是道具没有更新并继续返回“未定义”,即使我从父组件更新了 state

 

     useEffect(()=>{
       //set your state only after api data is completely fetched
   
         api('someapi').then((response)=>{
         console.log(response);// make sure this is not undefined
   
    if(response.status===200){
        setSelectedValue(response.data); 
        }
   }); 
   },[])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM