如何在React中创建可连接到数组的对象?

时间:2018-06-26 01:39:56

标签: javascript arrays reactjs javascript-objects

这是我要连接的数组

venues: [
        {
          name: "Picnic",
          rating: 5
        },
        {
          name: "Mr Tulk",
          rating: 4
        },
        {
          name: "Auction Rooms",
          rating: 3,
        }
      ]

这是我班上的代码,我从输入中获取值。 我已将键设置为保存输入值的变量,但出现语法错误。

class AddVenue extends React.Component {
  onFormSubmit = (e) => {
    e.preventDefault();
    const venueName = e.target.elements.name.value;
    const rating = e.target.elements.rating.value;
    if (venueName && rating) {
     {
       name: venueName,
       rating: rating
     } 
    }
  }
  render() {

      return (
          <form onSubmit={this.onFormSubmit}>
              <input type="text" name="name" />
              <input type="text" rating="rating" />
              <button>Add Venue</button>
          </form>
      )
   }
}

我还认为我不需要将其分配给变量或创建新实例,因为数组中的每个对象都没有分配给变量?

我现在还不想使用JSON对象,因为我现在想在学习和使用React和JavaScript时保持它的基本状态

您能否也请解释一下为什么不起作用以及您的答案为何起作用:-)

1 个答案:

答案 0 :(得分:0)

代替

if (venueName && rating) {
 {
   name: venueName,
   rating: rating
 } 

将其更改为

if (venueName && rating) {
  venues.push({
    name: venueName,
    rating: rating
  });
}

venues是一个数组,因此为了向其中添加新元素,可以使用push方法