在函数上使用带有一个参数的_.partial

时间:2017-02-23 14:06:12

标签: javascript reactjs underscore.js

我在react.js中重构代码。我有一个元素在函数上使用部分Underscore.js _.partial已经有一个参数是否有任何意义实际上这样做?

我理解网站上的例子:

var subtract = function(a, b) { return b - a; };
sub5 = _.partial(subtract, 5);
sub5(20);
=> 15

但我要说我有功能:

onEvent(e){
    this.setState({
        something: {
            property: e
        }
   });
}

为什么要使用这样的东西? (除此之外它对我不起作用)

1 个答案:

答案 0 :(得分:2)

你的第一个问题 - 你可以使用一个带有一个参数的函数。

是的,您可以轻松地使用_.partial一个参数:

// Two arguments
const add = function(a, b) {
  return a + b;
}

const add5 = _.partial(add, 5);

add5(3); // 8
add5(4); // 9


// One argument
const double = function(n) {
  return n * 2;
}

const doubleFive = _.partial(double, 5);
const doubleTen = _.partial(double, 10);

doubleFive(); // 10
doubleTen(); // 20

http://codepen.io/anon/pen/qrBaZe?editors=0011

你的第二个问题 - “为什么要用这样的东西”?

在那个特定的例子中,它根本没有意义。 e正在被一个反应事件传入,所以我不确定你会绑定到哪个部分?

有很多例子可以解释为什么你会使用部分反应,但上面不是一个。