繁体   English   中英

ES6/React 添加对象到数组

[英]ES6/React adding object to array

如果有人能发现它,代码中的某处存在缺陷,我将不胜感激,谢谢。

步骤 1. react 表单向包含两个变量 [ email & name ] 的状态添加一条记录

    export const AddForm = (props) => {

         const [ name, setName ] = useState('')
         const [ email, setEmail ] = useState('');

         return (
              <div>
                    Name:
                   <input type="text" 
                           id="name" 
                           onChange={ (event)=> { setName(event.target.value) }} /><br />
                   Email:
                   <input type="email" 
                           id="email" 
                           onChange={ (event)=> { setEmail(event.target.value) }}/><br />
                   <button type="button" 
                           onClick={ ()=> { props.doAdd(name,email) } } >Add</button>
              </div>
         )

    }

Step 2. main app.js 中 doAdd() 函数的执行

  const doAdd = (name,email) => {
    var newData = '{"name":'+name+',"email":'+email+'}';
    setAllVals([...allVals,newData]);

  }

输入值后,我的对象数组无法正常执行。 例如 allVals[0].name = blank (应该是name1

这是 console.log 在此处输入图片说明

用这个

const doAdd = (n,e) => {
    var newData = {name:n,email:e};
    setAllVals([...allVals,newData]);
  }

将 n 传递给 name-> name:n并将 e 传递给 email-> email:e 在这里,您的姓名和电子邮件是对象的关键,而 n,e 是值。

它类似于

var objExample = {
    key1: value1,
    key2: value2
};

您可以检查以更好地理解对象

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM