亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

在react中使用RadioGroup時如何獲取完整的事件對象

在react中使用RadioGroup時如何獲取完整的事件對象

呼如林 2023-07-14 15:03:45
onChange大家好,我遇到了一個小問題,我在 React 中使用 RadioGroup,我的問題是我無法獲取事件對象,而是只獲取值,在我的情況下,我想在事件觸發時獲取名稱和值 <RadioGroup name="distance" onChange={handleChange}>     <Radio value="0.5">0.5</Radio>     <Radio value="2000">1</Radio>     <Radio value="3000">2</Radio>     <Radio value="4000">3</Radio>     <Radio value="5000">4</Radio> </RadioGroup> const handleChange = (e) => {    console.log(e);//getting only the value     };
查看完整描述

3 回答

?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

我沒有嘗試重現你的情況,但嘗試這樣的事情:

onChange={e => handleChange(e)}

比CB中的

const handleChange = (e, value) => {console.log(e, value)}

此致!


查看完整回答
反對 回復 2023-07-14
?
鳳凰求蠱

TA貢獻1825條經驗 獲得超4個贊

next version (v1.x)和stable version v0.xof有兩個區別chakra-ui


<RadioGroup />在(v0.x)中


onChange?: (

    event: React.ChangeEvent<HTMLInputElement>,

    value: IRadio["value"],

  ) => void;

和<RadioGroup />(v1.x)


onChange?(nextValue: StringOrNumber): void;

如果您想參加該活動,您可以降級您的版本chakra-ui


查看完整回答
反對 回復 2023-07-14
?
慕田峪7331174

TA貢獻1828條經驗 獲得超13個贊

我遇到了同樣的問題,因為我希望我handleChange在任何類型的領域工作,我已經這樣設置了。


const [formData, setFormData] = React.useState({

    inputField: "",

    checkBoxField: false,

    emailField: "",

    distance: "" /* radioField */

})



function handleChange(event) {

    const { name, value, type, checked } = event.target

    setFormData(prevFormData => {

        return {

            ...prevFormData,

            [name]: type === "checkbox" ? checked : value

        }

    })

}

作為解決方法,我編寫了一個返回假事件的函數。


function createEvent(name, value) {

    return {

        target: {

            name: name,

            value: value,

            type: "radio",

            checked: false

        }

    }

}

然后我的RadioGroup會是這樣的:


<RadioGroup

    name="distance"

    onChange={

        function(value) {

            props.handleChange(

                createEvent("distance", value)

            )

        }

    }

>

    <Radio value="0.5">0.5</Radio>

    <Radio value="2000">1</Radio>

    <Radio value="3000">2</Radio>

    <Radio value="4000">3</Radio>

    <Radio value="5000">4</Radio>

</RadioGroup>

但是,是的,將name="distance"asRadioGroup的屬性不再重要了。如果我們只需要 的一些屬性event.target,但仍然希望它們能夠盡快添加對完整事件對象的訪問權限,則可以使用。


查看完整回答
反對 回復 2023-07-14
  • 3 回答
  • 0 關注
  • 223 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號