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

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

在 ReactJS 的 FormData 中使用時,頭像總是顯示為未定義

在 ReactJS 的 FormData 中使用時,頭像總是顯示為未定義

繁華開滿天機 2022-07-15 09:57:23
我正在嘗試創(chuàng)建一個表單,其中我將文本輸入和文件輸入?yún)R總在一起,并且一切正常,直到我決定實現(xiàn)所述文件輸入。這是我的代碼:const [producerData, setProducerData] = useState({    title: '',    text: '',    address: '',    status: '',    avatar: '',});const { title, text, address, status, avatar } = producerData;const [avatarname, setAvatarName] = useState('Choose Avatar');const [uploadPercentage, setUploaderPercentage] = useState(0);const handleChange = name => e => {    setProducerData({...producerData, [name]: e.target.value });    // setAvatar(e.target.files[0]);    name === 'avatar' && setProducerData({...producerData, avatar: e.target.files[0]}) && setAvatarName(e.target.files[0].name);    // console.log(e.target.files);}const addProducer = async e => {    e.preventDefault();    const formData = new FormData();    producerData.avatar = formData.append('avatar', avatar);    console.log(producerData);    // addProducer(producerData, setUploaderPercentage);}讓我們這樣說吧,如果我創(chuàng)建一個函數(shù),它就可以工作,也許setAvatar正如代碼中所注釋的那樣。那行得通,但是當我嘗試在與 producerData 相同的對象中使用它時,它總是返回未定義的。編輯:我在幾個 StackOverflow 線程上發(fā)現(xiàn),為了一起處理常規(guī)和文件輸入,我需要執(zhí)行以下操作:const addProducer = async e => {    e.preventDefault();    const formData = new FormData();    formData.append( 'title', e.target.title.value)    formData.append( 'text', e.target.text.value)    formData.append( 'address', e.target.address.value)    formData.append( 'status', e.target.status.value)    formData.append('avatar', e.target.avatar.files[0]);    console.log(formData);    // setAvatarName(e.target.files[0].name);    // addProducer(producerData, setUploaderPercentage);}并且我需要從我的輸入中刪除 onChange 和 value 屬性?;旧蠌倪@個:<Form.Group>    <Form.Label htmlFor={`title`}>Title</Form.Label>    <InputGroup>        <InputGroup.Prepend>            <InputGroup.Text id={`title-text`}>                <i className={`fas fa-heading`} />            </InputGroup.Text>        </InputGroup.Prepend>這只是我如何擁有我正在使用的其余輸入的一個示例。希望我能讓自己明白。
查看完整描述

2 回答

?
湖上湖

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

我所知道的是,每當您使用useState()鉤子時,您將獲得[variable , setVariable]狀態(tài)完整組件“類”中的狀態(tài)而不是狀態(tài),并且setVaraiable()函數(shù)的目的是控制變量的值,所以我猜您不允許訪問使用 設(shè)置值producerData.avatar。



查看完整回答
反對 回復(fù) 2022-07-15
?
小怪獸愛吃肉

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

設(shè)置 producerData 的方式與在 handleChange 方法中相同。



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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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