第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

材質(zhì) ui 單選按鈕選擇 reactjs 中的上一個按鈕值

材質(zhì) ui 單選按鈕選擇 reactjs 中的上一個按鈕值

呼如林 2022-09-23 21:51:30
我已經(jīng)添加了單選按鈕組到mareferjs應(yīng)用程序,這里的問題是當(dāng)我嘗試記錄值時,我得到前一個單選按鈕的值,而不是獲取當(dāng)前按鈕的值。例如。假設(shè)當(dāng)我點擊從然后這個日志。我不知道是什么導(dǎo)致了這個問題。allawaitedall我的代碼 const [radioValue, setRadioValue] = React.useState("all");function handleChangeRadio(event) {    const value = event.target.value;    setRadioValue(value);    console.log(radioValue);             <---- Here When i try to log the value. it shows the value of previous button.  }<RadioGroup              className={classes.radioGroup}              aria-label="status"              name="status"              value={radioValue}              onChange={handleChangeRadio}              row            >              <FormControlLabel                checked={radioValue === "all"}                value="all"                control={<Radio color="primary" />}                label="All"                labelPlacement="end"                className={classes.radioLabel}              />              <FormControlLabel                checked={radioValue === "approved"}                value="approved"                control={<Radio color="primary" />}                label="Approved"                labelPlacement="end"                className={classes.radioLabel}              />              <FormControlLabel                checked={radioValue === "awaited"}                value="awaited"                control={<Radio color="primary" />}                label="Awaited"                labelPlacement="end"                className={classes.radioLabel}              />              <FormControlLabel                checked={radioValue === "on_hold"}                value="on_hold"                control={<Radio color="primary" />}                label="On Hold"                labelPlacement="end"                className={classes.radioLabel}              />            </RadioGroup>
查看完整描述

2 回答

?
狐的傳說

TA貢獻1804條經(jīng)驗 獲得超3個贊

使用 useState 掛鉤提供的更新程序的狀態(tài)更新是異步的,不會立即反映。


嘗試使用鉤子讀取值:useEffect()


useEffect(() => {

  console.log(radioValue)

}, [radioValue])


查看完整回答
反對 回復(fù) 2022-09-23
?
吃雞游戲

TA貢獻1829條經(jīng)驗 獲得超7個贊

您需要知道:


setState操作是異步的,并且為提高性能而進行批處理。這在設(shè)置狀態(tài)的文檔中有解釋。


但是為什么? 改變狀態(tài)并導(dǎo)致重新呈現(xiàn)。這可能是一項代價高昂的操作,使其同步可能會使瀏覽器無響應(yīng)setState


因此,setState 調(diào)用是異步的,并且是批處理的,以獲得更好的 UI 體驗和性能。


如果我需要在之后做些什么怎么辦?setState


如果你有一個,你可以做你需要的里面,像這樣:React Class ComponentsetState callback


this.setState(newState, function(){

   // Do what it needs to be done after updating newState here

});

如果你有一個你需要用鉤子聽,并做你需要的事情,像這樣:React Functional Componentstate changeuseEffectuseEffect


useEffect(() => {

  // Do what it needs to be done after updating state here

}, [radioValue])


查看完整回答
反對 回復(fù) 2022-09-23
  • 2 回答
  • 0 關(guān)注
  • 114 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號