javascript - 如何在 ReactJS 中将对象插入数组

标签 javascript reactjs

我有以下情况。我正在从后端获取数据,响应是一堆对象。我想迭代它们,在每次迭代中,我想将它们插入我的状态。

这是我从后端获取数据的方式:

     const allBookings = useSelector(getBookings);

      useEffect(() => {
        dispatch(
          fetchBookings.request({
            getAll: true,
          })
        );
      }, [dispatch]);

这是我的数据:

bookings:{
  0:{id: 294, address: '1585 Charleston Rd, Mountain View, CA, USA', broker:{name:'aaa'}},
  1:{id: 294, address: '1586 Charleston Rd, Mountain View, CA, USA', broker:{name:'bbb'}},
  2:{id: 294, address: '1587 Charleston Rd, Mountain View, CA, USA', broker:{name:'ccc'}}
}

在这里,我试图将我的数据设置在一个数组中,但出了点问题,请帮助我弄清楚如何实现。最终的结果应该是这样的:

    [
      {id: 294, address: '1585 Charleston Rd, Mountain View, CA, USA', broker:{name:'aaa'}},
      {id: 294, address: '1586 Charleston Rd, Mountain View, CA, USA', broker:{name:'bbb'}},
      {id: 294, address: '1587 Charleston Rd, Mountain View, CA, USA', broker:{name:'ccc'}}
    ]
     if (!allBookings) return null;

      const book = allBookings.bookings;
      const [books, setBooks] = useState([]);
      useEffect(() => {
        if (book) {
          const x = Object.entries(book);
          setBooks(x);
        }
      }, [book]);

    console.log('books===>', books);

here is my code in sandbox

最佳答案

改变 const x = Object.entries(book); const x = Object.values(book);

关于javascript - 如何在 ReactJS 中将对象插入数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70504702/

相关文章:

javascript - 将数据从一个组件访问到另一个组件

javascript - 测试: `Error: Invariant Violation: addComponentAsRefTo(...): Only a ReactOwner can have refs.` error

javascript - ReactJS 和 typescript : Creating a private route using router dom

reactjs - Material-UI DataGrid 列单元格中的线性进度条

javascript - 如何使用 Material-table 更改索引列

javascript - 如何使用 javascript 从包含 html 代码的变量中获取选定的 div 部分?

javascript - 如何更改 package.json 输出位置

javascript - 带有对话框的 jquery ui 循环

ReactJS - 我应该使用类方法还是外部函数

javascript - 表单上的 ReactJS onSubmit 不起作用