在 sortBy 的文档中,它说我们可以使用 R.prop 按对象的字段对对象进行排序。但是如果我必须按嵌套字段排序,它就不起作用。例如 R.prop('id.number') 不起作用。
var items = [{id:3},{id:1},{id:2}];
var sorter = R.sortBy(R.prop('id'));
sorter(items)
工作正常。但是如果我有一个嵌套结构
var items = [{id:{number:3}},{id:{number:1}},{id:{number:2}}];
var sorter = R.sortBy(R.prop('id.number'));
sorter(items)
返回一个空列表。我想有一种正确的使用 R.prop 的方法,但我无法弄清楚。
最佳答案
您可以使用 R.path
访问嵌套属性,因此您的示例将变为 R.sortBy(R.path(['id', 'number']))
关于javascript - 在 ramda.js 中使用嵌套字段进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36257219/