Для данного объектива:
const obj = {
foo: ['bar', 'qux']
}
const foo0Lens = R.lensPath(['foo', 0]);
R.set
устанавливает foo
первый элемент на указанное значение для объекта переменной:
R.set(foo0Lens, 'baz')(obj);
В то время как мне нужна функция, которая устанавливает foo
первый элемент в указанном объекте со значением переменной:
const setObjFoo0 = R.flip(R.set(foo0Lens))(obj);
setObjFoo0('baz');
R.flip
выполняет работу, но переключение аргументов делает код менее выразительным.
Это так, как это должно быть сделано?Я что-то упускаю в линзах Ramda?Есть ли другие способы для удобного создания setObjFoo0
с линзами?