Ramda.js 如何用挖掘对象采摘

Ramda.js how to pluck with digging object

我想制作一个包含 id 项的数组。

这是我的代码。

const list = [
  {
    meta: {
      id: 0
    }
  },
  {
    meta: {
      id: 1
    }
  }
]
    
const result = R.pluck('id')(R.pluck('meta')(list)) // → [0, 1]
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/ramda/0.26.1/ramda.min.js"></script>

我做了两次 pluck,我觉得这不是很酷。

有什么最酷的方法吗?

我想使用 Ramda.js。

城里的人都说这很酷:

const list = [
  {
    meta: {
      id: 0
    }
  },
  {
    meta: {
      id: 1
    }
  }
]

const result = R.map(R.path(['meta', 'id']))(list);
console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/ramda/0.26.1/ramda.min.js"></script>