Lodash的香草javascript等价物是什么;斯宾德?

Lodash的香草javascript等价物是什么;斯宾德?,javascript,reactjs,lodash,bind,Javascript,Reactjs,Lodash,Bind,我在React组件中有一个onClickprops,它包含以下内容: onClick={_.bind(this.callMe, this, argToPass)} 请记住,这是在使用React.createClass的React组件中,因此组件函数应该绑定到它的上下文 不幸的是,当我尝试通过执行以下操作来绑定它时: onClick={this.callMe(argToPass)} 它打破了我的一个测试 我不想绑定它,因为它作为道具传递,如下所示: onClick={this.callMe(a

我在React组件中有一个
onClick
props,它包含以下内容:

onClick={_.bind(this.callMe, this, argToPass)}
请记住,这是在使用React.createClass的React组件中,因此组件函数应该绑定到它的上下文

不幸的是,当我尝试通过执行以下操作来绑定它时:

onClick={this.callMe(argToPass)}
它打破了我的一个测试

我不想绑定它,因为它作为道具传递,如下所示:

onClick={this.callMe(argToPass).bind(this)}
b/c性能问题

香草javascript的等价物是什么:

_.bind(this.callMe, this, argToPass)
这将允许函数正确绑定

谢谢

JS的等价物是:

顺便说一句,我建议避免在渲染阶段绑定props中的函数。您可以在

中阅读更多关于它的内容,JS的等效内容是:

顺便说一句,我建议避免在渲染阶段绑定props中的函数。您可以在中阅读更多关于它的信息

试试这个,这是es6 sentax

import partial from 'lodash/partial'

// bind using Function.bind
onClick={partial(this.callMe.bind(this), argToPass)}

// when binded in constructor or using arrow function
onClick={partial(this.callMe, argToPass)} 

试试这个。这是es6 sentax。

伙计。谁在没有解释的情况下否决了投票?这是合法的,在一个出色团队的生产中,也是一个真正的问题。我不想通过以下方式来约束它:
This.callMe(argToPass.bind(This)
b/c性能问题。-你的意思是因为那不正确?因为除非
this.callMe()
返回一个函数,否则它只会抛出一个错误,但即使它返回了,您仍然会有一个bug。注意,我没有投反对票,我只是在评论。存在性能问题,我不想使用该符号将函数绑定到该组件的上下文。裁判:伙计。谁在没有解释的情况下否决了投票?这是合法的,在一个出色团队的生产中,也是一个真正的问题。我不想通过以下方式来约束它:
This.callMe(argToPass.bind(This)
b/c性能问题。-你的意思是因为那不正确?因为除非
this.callMe()
返回一个函数,否则它只会抛出一个错误,但即使它返回了,您仍然会有一个bug。注意,我没有投反对票,我只是在评论。存在性能问题,我不想使用该符号将函数绑定到该组件的上下文。我不想在onClick中绑定。这与此.callMe(argToPass).bind(this)相同吗?您要求提供与之等效的
。.bind()
,函数#bind。react中的绑定是另一个主题,您应该检查我添加到答案中的链接。我不想在onClick中绑定。这与此.callMe(argToPass).bind(this)相同吗?您要求提供与之等效的
。.bind()
,函数#bind。react中的绑定是另一个主题,你应该检查我添加到答案中的链接。没有骰子。还是没通过测试,但我很感激你的反馈。没有骰子。虽然这段代码可能是解决方案,但确实有助于提高您的文章质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。虽然此代码片段可能是解决方案,但确实有助于提高您文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。
import partial from 'lodash/partial'

// bind using Function.bind
onClick={partial(this.callMe.bind(this), argToPass)}

// when binded in constructor or using arrow function
onClick={partial(this.callMe, argToPass)} 
import partial from 'lodash/partial'

// bind using Function.bind
onClick={partial(this.callMe.bind(this), argToPass)}

// when binded in constructor or using arrow function
onClick={partial(this.callMe, argToPass)}