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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

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

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

呼如林 2022-09-23 21:51:30
我已經(jīng)添加了單選按鈕組到mareferjs應(yīng)用程序,這里的問題是當(dāng)我嘗試記錄值時(shí),我得到前一個(gè)單選按鈕的值,而不是獲取當(dāng)前按鈕的值。例如。假設(shè)當(dāng)我點(diǎn)擊從然后這個(gè)日志。我不知道是什么導(dǎo)致了這個(gè)問題。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貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個(gè)贊

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


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


useEffect(() => {

  console.log(radioValue)

}, [radioValue])


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

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超7個(gè)贊

您需要知道:


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


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


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


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


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


this.setState(newState, function(){

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

});

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


useEffect(() => {

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

}, [radioValue])


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

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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