我有这段代码:
var fn = function(fn, name) {
this.commands.add(name, fn);
}.bind(this);
_.mapObjIndexed(fn, this.commandList);
我觉得有一种方法可以改进这段代码并使其只有一行。我尝试了许多不同的方法,但我是ramda.js
的新手,我可能会遗漏一些功能,这会使这更简单,更简单。
答案 0 :(得分:2)
您好像在寻找flip
function / flip
function:
_.mapObjIndexed(_.flip(this.commands.add), this.commandList);
如果.bind(this.commands)
功能需要add
,您可以使用_.bindKey(this.commands, "add")
来缩短Create Other...
。
如果由于参数数量而导致翻转无效,您可能需要投入_.ary(…, 2)
或_.binary(…)
。