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

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

如何在對象數組中的數組中添加元素

如何在對象數組中的數組中添加元素

慕的地8271018 2022-10-27 16:35:22
我收到錯誤:this.state.questions[key] is not iterable我想optiontext從輸入字段推送到options數組this.state = {  sections: [{    key: 1,    value: 1  }],  optionText: '',  questions: [{    id: Math.round(Math.random() * 1000000000000000),    query: '',    sectionId: 1,    selectedType: 1,    options: ['1st option', ],    isChecked: true  }],}addOption = (key) => {  const addtext = this.state.optionText //typed text in input   let option = this.state.questions[key].options; //trying to access array in array of object   this.setState({    questions: [...this.state.questions[key], addtext]  });}<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>  sections: [{ key: 1, value: 1 }],  optionText: '',      surveyTitle: '',      description: '',      questions: [{        id: Math.round(Math.random() * 1000000000000000),        query: '',        sectionId: 1,        selectedType: 1,        options: ['1st option',],        isChecked: true      }],    } addOption = (key) => {    const addtext = this.state.optionText //typed text in input     let option = this.state.questions[key].options; //trying to access array in array of object     this.setState({ questions: [...this.state.questions[key], addtext] });  }
查看完整描述

1 回答

?
慕田峪9158850

TA貢獻1794條經驗 獲得超8個贊

提取選項并附加一個值。在使用合并選項拼接新問題之前克隆問題。更新狀態。


this.state = {

  sections: [{

    key: 1,

    value: 1

  }],

  optionText: '',

  questions: [{

    id: Math.round(Math.random() * 1000000000000000),

    query: '',

    sectionId: 1,

    selectedType: 1,

    options: ['1st option', ],

    isChecked: true

  }],

}

addOption = (key) => {

  const addtext = this.state.optionText //typed text in input 

  let options = this.state.questions[key].options; //trying to access array in array of object 

  options = [...options, addText];

  const questions = [...this.state.questions];

  questions.splice(key, 1, {...questions[key], options});


  this.setState({

    questions

  });

}

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>



查看完整回答
反對 回復 2022-10-27
  • 1 回答
  • 0 關注
  • 96 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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