本文介绍了在 ramda 中对多个数据进行管道传输的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在多个数据数组上进行管道传输?最终我想实现这样的目标:
How can I pipe on multiple data arrays? Ultimately I want to achieve something like this:
const data = [{id: 1, data:100}, {id: 2, data: 200}, {id: 3, data: 3000}, ... ]
我试过了,但没有用:
pipe(
map(assoc('data', __, {})),
map(assoc('id', multiply(100, prop('data', __))))
)(range(1, 1000))
如果方法是使用两个管道,那么必须有某种方法可以同时通过管道传输两个不同的数组.如何实施?
If the approach is to use two pipes, then there has to be some way to pipe over two different arrays simultaneously. How can this be implemented?
推荐答案
我建议:
R.map(n => ({id: n, data: 100 * n}), R.range(1, 1000))
可以使用无点解决方案,但它并不优雅:
A point-free solution is available, but it's not elegant:
R.map(R.converge(R.merge,
[R.objOf('id'),
R.compose(R.objOf('data'), R.multiply(100))]),
R.range(1, 10))
这篇关于在 ramda 中对多个数据进行管道传输的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!