javascript - 如何通过 Javascript/React 中的 props 对使用 map 方法的数组进行排序

标签 javascript reactjs sorting react-props

我有一个名为 products 的数组,它使用 map 方法列出其中的所有元素,我试图通过 price 属性对这些元素进行排序。我已经尝试了所有类型的排序方法和函数,但我无法让它工作。

JS

const recentprods = products.map(prod => {
  return <TableRow name={prod.name} price={prod.price} />
})

我试过:

const recentprods = products.map(prod => {
  return <TableRow name={prod.name} price={prod.price} />
}).sort((a,b) => a.price < b.price)

recentprods.sort() 

从本质上讲,如何根据 props 对 React 组件进行排序?

最佳答案

您应该在映射之前应用排序。

const recentprods = products
  .sort((a,b) => a.price - b.price)
      // if you want to change the sorting direction: b.price - a.price
  .map(prod => {
     return <TableRow name={prod.name} price={prod.price} />
  });

关于javascript - 如何通过 Javascript/React 中的 props 对使用 map 方法的数组进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64082513/

相关文章:

javascript - 你能帮我理解 sort() 在 Javascript 中是如何工作的吗?

android - react native 回调

node.js - 在自定义 serviceWorker 内调度 redux 操作

MongoDB:对 UTF-8 字符串进行排序

delphi - 为什么我的TStringList不排序

更新对象字段的 Javascript 函数

javascript - Jquery菜单-返回json数据

javascript - Typescript $inject $timeout into a directive ...在 Controller 中工作,而不是在链接中

javascript - 过滤输入基本reactJS搜索功能的延迟

java - 在java中获取排序数组的原始索引(Android)